From d918f20dbe1e8e7bf1fd2ca09c247818374cb046 Mon Sep 17 00:00:00 2001 From: cjy Date: Fri, 19 Dec 2025 09:15:04 +0800 Subject: [PATCH 01/19] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0=E4=B8=A4?= =?UTF-8?q?=E4=B8=AA=E5=B9=B3=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/aryshare/ayrshare.pb.go | 11462 +++++++++++++++++++++++- api/aryshare/ayrshare.validator.pb.go | 738 +- api/aryshare/ayrshare_triple.pb.go | 742 +- pkg/model/cast/media.go | 4 + pkg/service/cast/work.go | 20 + 5 files changed, 12469 insertions(+), 497 deletions(-) diff --git a/api/aryshare/ayrshare.pb.go b/api/aryshare/ayrshare.pb.go index fd015ab..7487e34 100644 --- a/api/aryshare/ayrshare.pb.go +++ b/api/aryshare/ayrshare.pb.go @@ -358,6 +358,198 @@ func (x *TikTokOptions) GetVisibility() string { return "" } +// YouTube 特定发布选项 +type YouTubeOptions struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` // Video title (required for YouTube) + Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description"` // Video description + Privacy string `protobuf:"bytes,3,opt,name=privacy,proto3" json:"privacy"` // Privacy status: "public", "unlisted", "private" (default "public") + Tags []string `protobuf:"bytes,4,rep,name=tags,proto3" json:"tags"` // Video tags + CategoryId string `protobuf:"bytes,5,opt,name=categoryId,proto3" json:"categoryId"` // YouTube category ID + MadeForKids bool `protobuf:"varint,6,opt,name=madeForKids,proto3" json:"madeForKids"` // Whether the video is made for kids + ThumbNail string `protobuf:"bytes,7,opt,name=thumbNail,proto3" json:"thumbNail"` // URL of custom thumbnail image + PlaylistId string `protobuf:"bytes,8,opt,name=playlistId,proto3" json:"playlistId"` // Playlist ID to add the video to + NotifySubscribers bool `protobuf:"varint,9,opt,name=notifySubscribers,proto3" json:"notifySubscribers"` // Whether to notify subscribers (default true) +} + +func (x *YouTubeOptions) Reset() { + *x = YouTubeOptions{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *YouTubeOptions) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*YouTubeOptions) ProtoMessage() {} + +func (x *YouTubeOptions) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_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 YouTubeOptions.ProtoReflect.Descriptor instead. +func (*YouTubeOptions) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{3} +} + +func (x *YouTubeOptions) GetTitle() string { + if x != nil { + return x.Title + } + return "" +} + +func (x *YouTubeOptions) GetDescription() string { + if x != nil { + return x.Description + } + return "" +} + +func (x *YouTubeOptions) GetPrivacy() string { + if x != nil { + return x.Privacy + } + return "" +} + +func (x *YouTubeOptions) GetTags() []string { + if x != nil { + return x.Tags + } + return nil +} + +func (x *YouTubeOptions) GetCategoryId() string { + if x != nil { + return x.CategoryId + } + return "" +} + +func (x *YouTubeOptions) GetMadeForKids() bool { + if x != nil { + return x.MadeForKids + } + return false +} + +func (x *YouTubeOptions) GetThumbNail() string { + if x != nil { + return x.ThumbNail + } + return "" +} + +func (x *YouTubeOptions) GetPlaylistId() string { + if x != nil { + return x.PlaylistId + } + return "" +} + +func (x *YouTubeOptions) GetNotifySubscribers() bool { + if x != nil { + return x.NotifySubscribers + } + return false +} + +// Bluesky 特定发布选项 +type BlueskyOptions struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Labels []string `protobuf:"bytes,1,rep,name=labels,proto3" json:"labels"` // Content labels for the post + Langs []string `protobuf:"bytes,2,rep,name=langs,proto3" json:"langs"` // Language codes (e.g., ["en", "zh"]) + QuotedPostUri string `protobuf:"bytes,3,opt,name=quotedPostUri,proto3" json:"quotedPostUri"` // URI of the post to quote + ReplyToPostUri string `protobuf:"bytes,4,opt,name=replyToPostUri,proto3" json:"replyToPostUri"` // URI of the post to reply to + ReplyToPostCid string `protobuf:"bytes,5,opt,name=replyToPostCid,proto3" json:"replyToPostCid"` // CID of the post to reply to +} + +func (x *BlueskyOptions) Reset() { + *x = BlueskyOptions{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BlueskyOptions) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BlueskyOptions) ProtoMessage() {} + +func (x *BlueskyOptions) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_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 BlueskyOptions.ProtoReflect.Descriptor instead. +func (*BlueskyOptions) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{4} +} + +func (x *BlueskyOptions) GetLabels() []string { + if x != nil { + return x.Labels + } + return nil +} + +func (x *BlueskyOptions) GetLangs() []string { + if x != nil { + return x.Langs + } + return nil +} + +func (x *BlueskyOptions) GetQuotedPostUri() string { + if x != nil { + return x.QuotedPostUri + } + return "" +} + +func (x *BlueskyOptions) GetReplyToPostUri() string { + if x != nil { + return x.ReplyToPostUri + } + return "" +} + +func (x *BlueskyOptions) GetReplyToPostCid() string { + if x != nil { + return x.ReplyToPostCid + } + return "" +} + // 发布帖子到社交媒体平台 type PostRequest struct { state protoimpl.MessageState @@ -375,12 +567,14 @@ type PostRequest struct { InstagramOptions *InstagramOptions `protobuf:"bytes,9,opt,name=instagramOptions,proto3" json:"instagramOptions"` TikTokOptions *TikTokOptions `protobuf:"bytes,10,opt,name=tikTokOptions,proto3" json:"tikTokOptions"` ProfileKey string `protobuf:"bytes,11,opt,name=profileKey,proto3" json:"profileKey"` + YouTubeOptions *YouTubeOptions `protobuf:"bytes,12,opt,name=youTubeOptions,proto3" json:"youTubeOptions"` + BlueskyOptions *BlueskyOptions `protobuf:"bytes,13,opt,name=blueskyOptions,proto3" json:"blueskyOptions"` } func (x *PostRequest) Reset() { *x = PostRequest{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[3] + mi := &file_pb_ayrshare_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -393,7 +587,7 @@ func (x *PostRequest) String() string { func (*PostRequest) ProtoMessage() {} func (x *PostRequest) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[3] + mi := &file_pb_ayrshare_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -406,7 +600,7 @@ func (x *PostRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use PostRequest.ProtoReflect.Descriptor instead. func (*PostRequest) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{3} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{5} } func (x *PostRequest) GetPost() string { @@ -486,6 +680,20 @@ func (x *PostRequest) GetProfileKey() string { return "" } +func (x *PostRequest) GetYouTubeOptions() *YouTubeOptions { + if x != nil { + return x.YouTubeOptions + } + return nil +} + +func (x *PostRequest) GetBlueskyOptions() *BlueskyOptions { + if x != nil { + return x.BlueskyOptions + } + return nil +} + // 单个平台的帖子ID响应 type PostId struct { state protoimpl.MessageState @@ -509,7 +717,7 @@ type PostId struct { func (x *PostId) Reset() { *x = PostId{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[4] + mi := &file_pb_ayrshare_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -522,7 +730,7 @@ func (x *PostId) String() string { func (*PostId) ProtoMessage() {} func (x *PostId) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[4] + mi := &file_pb_ayrshare_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -535,7 +743,7 @@ func (x *PostId) ProtoReflect() protoreflect.Message { // Deprecated: Use PostId.ProtoReflect.Descriptor instead. func (*PostId) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{4} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{6} } func (x *PostId) GetStatus() string { @@ -641,7 +849,7 @@ type PostItem struct { func (x *PostItem) Reset() { *x = PostItem{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[5] + mi := &file_pb_ayrshare_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -654,7 +862,7 @@ func (x *PostItem) String() string { func (*PostItem) ProtoMessage() {} func (x *PostItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[5] + mi := &file_pb_ayrshare_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -667,7 +875,7 @@ func (x *PostItem) ProtoReflect() protoreflect.Message { // Deprecated: Use PostItem.ProtoReflect.Descriptor instead. func (*PostItem) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{5} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{7} } func (x *PostItem) GetStatus() string { @@ -744,7 +952,7 @@ type PostResponse struct { func (x *PostResponse) Reset() { *x = PostResponse{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[6] + mi := &file_pb_ayrshare_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -757,7 +965,7 @@ func (x *PostResponse) String() string { func (*PostResponse) ProtoMessage() {} func (x *PostResponse) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[6] + mi := &file_pb_ayrshare_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -770,7 +978,7 @@ func (x *PostResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use PostResponse.ProtoReflect.Descriptor instead. func (*PostResponse) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{6} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{8} } func (x *PostResponse) GetStatus() string { @@ -828,7 +1036,7 @@ type GetPostRequest struct { func (x *GetPostRequest) Reset() { *x = GetPostRequest{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[7] + mi := &file_pb_ayrshare_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -841,7 +1049,7 @@ func (x *GetPostRequest) String() string { func (*GetPostRequest) ProtoMessage() {} func (x *GetPostRequest) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[7] + mi := &file_pb_ayrshare_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -854,7 +1062,7 @@ func (x *GetPostRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetPostRequest.ProtoReflect.Descriptor instead. func (*GetPostRequest) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{7} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{9} } func (x *GetPostRequest) GetId() string { @@ -895,7 +1103,7 @@ type GetPostResponse struct { func (x *GetPostResponse) Reset() { *x = GetPostResponse{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[8] + mi := &file_pb_ayrshare_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -908,7 +1116,7 @@ func (x *GetPostResponse) String() string { func (*GetPostResponse) ProtoMessage() {} func (x *GetPostResponse) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[8] + mi := &file_pb_ayrshare_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -921,7 +1129,7 @@ func (x *GetPostResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetPostResponse.ProtoReflect.Descriptor instead. func (*GetPostResponse) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{8} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{10} } func (x *GetPostResponse) GetCreated() string { @@ -1028,7 +1236,7 @@ type GetUserRequest struct { func (x *GetUserRequest) Reset() { *x = GetUserRequest{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[9] + mi := &file_pb_ayrshare_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1041,7 +1249,7 @@ func (x *GetUserRequest) String() string { func (*GetUserRequest) ProtoMessage() {} func (x *GetUserRequest) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[9] + mi := &file_pb_ayrshare_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1054,7 +1262,7 @@ func (x *GetUserRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetUserRequest.ProtoReflect.Descriptor instead. func (*GetUserRequest) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{9} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{11} } func (x *GetUserRequest) GetProfileKey() string { @@ -1085,7 +1293,7 @@ type Timestamp struct { func (x *Timestamp) Reset() { *x = Timestamp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[10] + mi := &file_pb_ayrshare_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1098,7 +1306,7 @@ func (x *Timestamp) String() string { func (*Timestamp) ProtoMessage() {} func (x *Timestamp) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[10] + mi := &file_pb_ayrshare_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1111,7 +1319,7 @@ func (x *Timestamp) ProtoReflect() protoreflect.Message { // Deprecated: Use Timestamp.ProtoReflect.Descriptor instead. func (*Timestamp) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{10} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{12} } func (x *Timestamp) GetSeconds() int64 { @@ -1149,7 +1357,7 @@ type TwitterUsage struct { func (x *TwitterUsage) Reset() { *x = TwitterUsage{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[11] + mi := &file_pb_ayrshare_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1162,7 +1370,7 @@ func (x *TwitterUsage) String() string { func (*TwitterUsage) ProtoMessage() {} func (x *TwitterUsage) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[11] + mi := &file_pb_ayrshare_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1175,7 +1383,7 @@ func (x *TwitterUsage) ProtoReflect() protoreflect.Message { // Deprecated: Use TwitterUsage.ProtoReflect.Descriptor instead. func (*TwitterUsage) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{11} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{13} } func (x *TwitterUsage) GetMonthlyUsage() int32 { @@ -1234,7 +1442,7 @@ type DisplayName struct { func (x *DisplayName) Reset() { *x = DisplayName{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[12] + mi := &file_pb_ayrshare_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1247,7 +1455,7 @@ func (x *DisplayName) String() string { func (*DisplayName) ProtoMessage() {} func (x *DisplayName) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[12] + mi := &file_pb_ayrshare_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1260,7 +1468,7 @@ func (x *DisplayName) ProtoReflect() protoreflect.Message { // Deprecated: Use DisplayName.ProtoReflect.Descriptor instead. func (*DisplayName) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{12} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{14} } func (x *DisplayName) GetCreated() string { @@ -1457,7 +1665,7 @@ type GetUserResponse struct { func (x *GetUserResponse) Reset() { *x = GetUserResponse{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[13] + mi := &file_pb_ayrshare_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1470,7 +1678,7 @@ func (x *GetUserResponse) String() string { func (*GetUserResponse) ProtoMessage() {} func (x *GetUserResponse) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[13] + mi := &file_pb_ayrshare_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1483,7 +1691,7 @@ func (x *GetUserResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetUserResponse.ProtoReflect.Descriptor instead. func (*GetUserResponse) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{13} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{15} } func (x *GetUserResponse) GetActiveSocialAccounts() []string { @@ -1611,7 +1819,7 @@ type CreateProfileRequest struct { func (x *CreateProfileRequest) Reset() { *x = CreateProfileRequest{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[14] + mi := &file_pb_ayrshare_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1624,7 +1832,7 @@ func (x *CreateProfileRequest) String() string { func (*CreateProfileRequest) ProtoMessage() {} func (x *CreateProfileRequest) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[14] + mi := &file_pb_ayrshare_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1637,7 +1845,7 @@ func (x *CreateProfileRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateProfileRequest.ProtoReflect.Descriptor instead. func (*CreateProfileRequest) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{14} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{16} } func (x *CreateProfileRequest) GetTitle() string { @@ -1719,7 +1927,7 @@ type CreateProfileResponse struct { func (x *CreateProfileResponse) Reset() { *x = CreateProfileResponse{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[15] + mi := &file_pb_ayrshare_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1732,7 +1940,7 @@ func (x *CreateProfileResponse) String() string { func (*CreateProfileResponse) ProtoMessage() {} func (x *CreateProfileResponse) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[15] + mi := &file_pb_ayrshare_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1745,7 +1953,7 @@ func (x *CreateProfileResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateProfileResponse.ProtoReflect.Descriptor instead. func (*CreateProfileResponse) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{15} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{17} } func (x *CreateProfileResponse) GetStatus() string { @@ -1805,7 +2013,7 @@ type GetProfilesRequest struct { func (x *GetProfilesRequest) Reset() { *x = GetProfilesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[16] + mi := &file_pb_ayrshare_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1818,7 +2026,7 @@ func (x *GetProfilesRequest) String() string { func (*GetProfilesRequest) ProtoMessage() {} func (x *GetProfilesRequest) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[16] + mi := &file_pb_ayrshare_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1831,7 +2039,7 @@ func (x *GetProfilesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetProfilesRequest.ProtoReflect.Descriptor instead. func (*GetProfilesRequest) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{16} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{18} } func (x *GetProfilesRequest) GetTitle() string { @@ -1932,7 +2140,7 @@ type ProfileItem struct { func (x *ProfileItem) Reset() { *x = ProfileItem{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[17] + mi := &file_pb_ayrshare_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1945,7 +2153,7 @@ func (x *ProfileItem) String() string { func (*ProfileItem) ProtoMessage() {} func (x *ProfileItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[17] + mi := &file_pb_ayrshare_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1958,7 +2166,7 @@ func (x *ProfileItem) ProtoReflect() protoreflect.Message { // Deprecated: Use ProfileItem.ProtoReflect.Descriptor instead. func (*ProfileItem) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{17} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{19} } func (x *ProfileItem) GetStatus() string { @@ -2031,7 +2239,7 @@ type Pagination struct { func (x *Pagination) Reset() { *x = Pagination{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[18] + mi := &file_pb_ayrshare_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2044,7 +2252,7 @@ func (x *Pagination) String() string { func (*Pagination) ProtoMessage() {} func (x *Pagination) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[18] + mi := &file_pb_ayrshare_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2057,7 +2265,7 @@ func (x *Pagination) ProtoReflect() protoreflect.Message { // Deprecated: Use Pagination.ProtoReflect.Descriptor instead. func (*Pagination) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{18} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{20} } func (x *Pagination) GetHasMore() bool { @@ -2097,7 +2305,7 @@ type GetProfilesResponse struct { func (x *GetProfilesResponse) Reset() { *x = GetProfilesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[19] + mi := &file_pb_ayrshare_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2110,7 +2318,7 @@ func (x *GetProfilesResponse) String() string { func (*GetProfilesResponse) ProtoMessage() {} func (x *GetProfilesResponse) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[19] + mi := &file_pb_ayrshare_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2123,7 +2331,7 @@ func (x *GetProfilesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetProfilesResponse.ProtoReflect.Descriptor instead. func (*GetProfilesResponse) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{19} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{21} } func (x *GetProfilesResponse) GetProfiles() []*ProfileItem { @@ -2175,7 +2383,7 @@ type Email struct { func (x *Email) Reset() { *x = Email{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[20] + mi := &file_pb_ayrshare_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2188,7 +2396,7 @@ func (x *Email) String() string { func (*Email) ProtoMessage() {} func (x *Email) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[20] + mi := &file_pb_ayrshare_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2201,7 +2409,7 @@ func (x *Email) ProtoReflect() protoreflect.Message { // Deprecated: Use Email.ProtoReflect.Descriptor instead. func (*Email) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{20} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{22} } func (x *Email) GetTo() string { @@ -2246,7 +2454,7 @@ type GenerateJWTRequest struct { func (x *GenerateJWTRequest) Reset() { *x = GenerateJWTRequest{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[21] + mi := &file_pb_ayrshare_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2259,7 +2467,7 @@ func (x *GenerateJWTRequest) String() string { func (*GenerateJWTRequest) ProtoMessage() {} func (x *GenerateJWTRequest) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[21] + mi := &file_pb_ayrshare_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2272,7 +2480,7 @@ func (x *GenerateJWTRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GenerateJWTRequest.ProtoReflect.Descriptor instead. func (*GenerateJWTRequest) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{21} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{23} } func (x *GenerateJWTRequest) GetDomain() string { @@ -2362,7 +2570,7 @@ type GenerateJWTResponse struct { func (x *GenerateJWTResponse) Reset() { *x = GenerateJWTResponse{} if protoimpl.UnsafeEnabled { - mi := &file_pb_ayrshare_proto_msgTypes[22] + mi := &file_pb_ayrshare_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2375,7 +2583,7 @@ func (x *GenerateJWTResponse) String() string { func (*GenerateJWTResponse) ProtoMessage() {} func (x *GenerateJWTResponse) ProtoReflect() protoreflect.Message { - mi := &file_pb_ayrshare_proto_msgTypes[22] + mi := &file_pb_ayrshare_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2388,7 +2596,7 @@ func (x *GenerateJWTResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GenerateJWTResponse.ProtoReflect.Descriptor instead. func (*GenerateJWTResponse) Descriptor() ([]byte, []int) { - return file_pb_ayrshare_proto_rawDescGZIP(), []int{22} + return file_pb_ayrshare_proto_rawDescGZIP(), []int{24} } func (x *GenerateJWTResponse) GetStatus() string { @@ -2433,6 +2641,7749 @@ func (x *GenerateJWTResponse) GetExpiresIn() string { return "" } +// 历史记录中的帖子 ID +type HistoryPostId struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform"` + PostUrl string `protobuf:"bytes,4,opt,name=postUrl,proto3" json:"postUrl"` + IsVideo bool `protobuf:"varint,5,opt,name=isVideo,proto3" json:"isVideo"` +} + +func (x *HistoryPostId) Reset() { + *x = HistoryPostId{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *HistoryPostId) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*HistoryPostId) ProtoMessage() {} + +func (x *HistoryPostId) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_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 HistoryPostId.ProtoReflect.Descriptor instead. +func (*HistoryPostId) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{25} +} + +func (x *HistoryPostId) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *HistoryPostId) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *HistoryPostId) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *HistoryPostId) GetPostUrl() string { + if x != nil { + return x.PostUrl + } + return "" +} + +func (x *HistoryPostId) GetIsVideo() bool { + if x != nil { + return x.IsVideo + } + return false +} + +// 历史记录项 +type HistoryItem struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Post string `protobuf:"bytes,2,opt,name=post,proto3" json:"post"` + Platforms []string `protobuf:"bytes,3,rep,name=platforms,proto3" json:"platforms"` + PostIds []*HistoryPostId `protobuf:"bytes,4,rep,name=postIds,proto3" json:"postIds"` + Errors []string `protobuf:"bytes,5,rep,name=errors,proto3" json:"errors"` + Type string `protobuf:"bytes,6,opt,name=type,proto3" json:"type"` + Notes string `protobuf:"bytes,7,opt,name=notes,proto3" json:"notes"` + Created string `protobuf:"bytes,8,opt,name=created,proto3" json:"created"` + Status string `protobuf:"bytes,9,opt,name=status,proto3" json:"status"` + ScheduleDate *Timestamp `protobuf:"bytes,10,opt,name=scheduleDate,proto3" json:"scheduleDate"` + Approved bool `protobuf:"varint,11,opt,name=approved,proto3" json:"approved"` + ApprovedBy string `protobuf:"bytes,12,opt,name=approvedBy,proto3" json:"approvedBy"` + ApprovedDate string `protobuf:"bytes,13,opt,name=approvedDate,proto3" json:"approvedDate"` + RejectedBy string `protobuf:"bytes,14,opt,name=rejectedBy,proto3" json:"rejectedBy"` + RejectedDate string `protobuf:"bytes,15,opt,name=rejectedDate,proto3" json:"rejectedDate"` + RequiresApproval bool `protobuf:"varint,16,opt,name=requiresApproval,proto3" json:"requiresApproval"` + ProfileTitle string `protobuf:"bytes,17,opt,name=profileTitle,proto3" json:"profileTitle"` + RefId string `protobuf:"bytes,18,opt,name=refId,proto3" json:"refId"` + MediaUrls []string `protobuf:"bytes,19,rep,name=mediaUrls,proto3" json:"mediaUrls"` + ShortenLinks bool `protobuf:"varint,20,opt,name=shortenLinks,proto3" json:"shortenLinks"` +} + +func (x *HistoryItem) Reset() { + *x = HistoryItem{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *HistoryItem) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*HistoryItem) ProtoMessage() {} + +func (x *HistoryItem) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_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 HistoryItem.ProtoReflect.Descriptor instead. +func (*HistoryItem) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{26} +} + +func (x *HistoryItem) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *HistoryItem) GetPost() string { + if x != nil { + return x.Post + } + return "" +} + +func (x *HistoryItem) GetPlatforms() []string { + if x != nil { + return x.Platforms + } + return nil +} + +func (x *HistoryItem) GetPostIds() []*HistoryPostId { + if x != nil { + return x.PostIds + } + return nil +} + +func (x *HistoryItem) GetErrors() []string { + if x != nil { + return x.Errors + } + return nil +} + +func (x *HistoryItem) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *HistoryItem) GetNotes() string { + if x != nil { + return x.Notes + } + return "" +} + +func (x *HistoryItem) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *HistoryItem) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *HistoryItem) GetScheduleDate() *Timestamp { + if x != nil { + return x.ScheduleDate + } + return nil +} + +func (x *HistoryItem) GetApproved() bool { + if x != nil { + return x.Approved + } + return false +} + +func (x *HistoryItem) GetApprovedBy() string { + if x != nil { + return x.ApprovedBy + } + return "" +} + +func (x *HistoryItem) GetApprovedDate() string { + if x != nil { + return x.ApprovedDate + } + return "" +} + +func (x *HistoryItem) GetRejectedBy() string { + if x != nil { + return x.RejectedBy + } + return "" +} + +func (x *HistoryItem) GetRejectedDate() string { + if x != nil { + return x.RejectedDate + } + return "" +} + +func (x *HistoryItem) GetRequiresApproval() bool { + if x != nil { + return x.RequiresApproval + } + return false +} + +func (x *HistoryItem) GetProfileTitle() string { + if x != nil { + return x.ProfileTitle + } + return "" +} + +func (x *HistoryItem) GetRefId() string { + if x != nil { + return x.RefId + } + return "" +} + +func (x *HistoryItem) GetMediaUrls() []string { + if x != nil { + return x.MediaUrls + } + return nil +} + +func (x *HistoryItem) GetShortenLinks() bool { + if x != nil { + return x.ShortenLinks + } + return false +} + +// 获取帖子历史记录请求 +type GetHistoryRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + StartDate string `protobuf:"bytes,1,opt,name=startDate,proto3" json:"startDate"` + EndDate string `protobuf:"bytes,2,opt,name=endDate,proto3" json:"endDate"` + Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit"` + Platforms []string `protobuf:"bytes,4,rep,name=platforms,proto3" json:"platforms"` + LastDays int32 `protobuf:"varint,5,opt,name=lastDays,proto3" json:"lastDays"` + Status string `protobuf:"bytes,6,opt,name=status,proto3" json:"status"` + Type string `protobuf:"bytes,7,opt,name=type,proto3" json:"type"` + AutoRepostId string `protobuf:"bytes,8,opt,name=autoRepostId,proto3" json:"autoRepostId"` + ProfileKey string `protobuf:"bytes,9,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *GetHistoryRequest) Reset() { + *x = GetHistoryRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetHistoryRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetHistoryRequest) ProtoMessage() {} + +func (x *GetHistoryRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_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 GetHistoryRequest.ProtoReflect.Descriptor instead. +func (*GetHistoryRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{27} +} + +func (x *GetHistoryRequest) GetStartDate() string { + if x != nil { + return x.StartDate + } + return "" +} + +func (x *GetHistoryRequest) GetEndDate() string { + if x != nil { + return x.EndDate + } + return "" +} + +func (x *GetHistoryRequest) GetLimit() int32 { + if x != nil { + return x.Limit + } + return 0 +} + +func (x *GetHistoryRequest) GetPlatforms() []string { + if x != nil { + return x.Platforms + } + return nil +} + +func (x *GetHistoryRequest) GetLastDays() int32 { + if x != nil { + return x.LastDays + } + return 0 +} + +func (x *GetHistoryRequest) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GetHistoryRequest) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *GetHistoryRequest) GetAutoRepostId() string { + if x != nil { + return x.AutoRepostId + } + return "" +} + +func (x *GetHistoryRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// 获取帖子历史记录响应 +type GetHistoryResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + History []*HistoryItem `protobuf:"bytes,1,rep,name=history,proto3" json:"history"` + RefId string `protobuf:"bytes,2,opt,name=refId,proto3" json:"refId"` + Count int32 `protobuf:"varint,3,opt,name=count,proto3" json:"count"` + LastUpdated string `protobuf:"bytes,4,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,5,opt,name=nextUpdate,proto3" json:"nextUpdate"` +} + +func (x *GetHistoryResponse) Reset() { + *x = GetHistoryResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetHistoryResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetHistoryResponse) ProtoMessage() {} + +func (x *GetHistoryResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_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 GetHistoryResponse.ProtoReflect.Descriptor instead. +func (*GetHistoryResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{28} +} + +func (x *GetHistoryResponse) GetHistory() []*HistoryItem { + if x != nil { + return x.History + } + return nil +} + +func (x *GetHistoryResponse) GetRefId() string { + if x != nil { + return x.RefId + } + return "" +} + +func (x *GetHistoryResponse) GetCount() int32 { + if x != nil { + return x.Count + } + return 0 +} + +func (x *GetHistoryResponse) GetLastUpdated() string { + if x != nil { + return x.LastUpdated + } + return "" +} + +func (x *GetHistoryResponse) GetNextUpdate() string { + if x != nil { + return x.NextUpdate + } + return "" +} + +// 根据ID获取帖子历史记录请求 +type GetHistoryByIdRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + SearchAllPosts bool `protobuf:"varint,2,opt,name=searchAllPosts,proto3" json:"searchAllPosts"` + ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *GetHistoryByIdRequest) Reset() { + *x = GetHistoryByIdRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetHistoryByIdRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetHistoryByIdRequest) ProtoMessage() {} + +func (x *GetHistoryByIdRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_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 GetHistoryByIdRequest.ProtoReflect.Descriptor instead. +func (*GetHistoryByIdRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{29} +} + +func (x *GetHistoryByIdRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GetHistoryByIdRequest) GetSearchAllPosts() bool { + if x != nil { + return x.SearchAllPosts + } + return false +} + +func (x *GetHistoryByIdRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// 根据ID获取帖子历史记录响应 +type GetHistoryByIdResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Tier string `protobuf:"bytes,1,opt,name=tier,proto3" json:"tier"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + MediaUrls []string `protobuf:"bytes,3,rep,name=mediaUrls,proto3" json:"mediaUrls"` + PostIds []*HistoryPostId `protobuf:"bytes,4,rep,name=postIds,proto3" json:"postIds"` + Id string `protobuf:"bytes,5,opt,name=id,proto3" json:"id"` + Errors []string `protobuf:"bytes,6,rep,name=errors,proto3" json:"errors"` + Platforms []string `protobuf:"bytes,7,rep,name=platforms,proto3" json:"platforms"` + ScheduleDate *Timestamp `protobuf:"bytes,8,opt,name=scheduleDate,proto3" json:"scheduleDate"` + Created string `protobuf:"bytes,9,opt,name=created,proto3" json:"created"` + ShortenLinks bool `protobuf:"varint,10,opt,name=shortenLinks,proto3" json:"shortenLinks"` + Post string `protobuf:"bytes,11,opt,name=post,proto3" json:"post"` + Notes string `protobuf:"bytes,12,opt,name=notes,proto3" json:"notes"` + Type string `protobuf:"bytes,13,opt,name=type,proto3" json:"type"` +} + +func (x *GetHistoryByIdResponse) Reset() { + *x = GetHistoryByIdResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetHistoryByIdResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetHistoryByIdResponse) ProtoMessage() {} + +func (x *GetHistoryByIdResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_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 GetHistoryByIdResponse.ProtoReflect.Descriptor instead. +func (*GetHistoryByIdResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{30} +} + +func (x *GetHistoryByIdResponse) GetTier() string { + if x != nil { + return x.Tier + } + return "" +} + +func (x *GetHistoryByIdResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GetHistoryByIdResponse) GetMediaUrls() []string { + if x != nil { + return x.MediaUrls + } + return nil +} + +func (x *GetHistoryByIdResponse) GetPostIds() []*HistoryPostId { + if x != nil { + return x.PostIds + } + return nil +} + +func (x *GetHistoryByIdResponse) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GetHistoryByIdResponse) GetErrors() []string { + if x != nil { + return x.Errors + } + return nil +} + +func (x *GetHistoryByIdResponse) GetPlatforms() []string { + if x != nil { + return x.Platforms + } + return nil +} + +func (x *GetHistoryByIdResponse) GetScheduleDate() *Timestamp { + if x != nil { + return x.ScheduleDate + } + return nil +} + +func (x *GetHistoryByIdResponse) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *GetHistoryByIdResponse) GetShortenLinks() bool { + if x != nil { + return x.ShortenLinks + } + return false +} + +func (x *GetHistoryByIdResponse) GetPost() string { + if x != nil { + return x.Post + } + return "" +} + +func (x *GetHistoryByIdResponse) GetNotes() string { + if x != nil { + return x.Notes + } + return "" +} + +func (x *GetHistoryByIdResponse) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +// 平台帖子 +type PlatformPost struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Post string `protobuf:"bytes,2,opt,name=post,proto3" json:"post"` + PostUrl string `protobuf:"bytes,3,opt,name=postUrl,proto3" json:"postUrl"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + CreatedAt string `protobuf:"bytes,5,opt,name=createdAt,proto3" json:"createdAt"` +} + +func (x *PlatformPost) Reset() { + *x = PlatformPost{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PlatformPost) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PlatformPost) ProtoMessage() {} + +func (x *PlatformPost) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PlatformPost.ProtoReflect.Descriptor instead. +func (*PlatformPost) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{31} +} + +func (x *PlatformPost) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *PlatformPost) GetPost() string { + if x != nil { + return x.Post + } + return "" +} + +func (x *PlatformPost) GetPostUrl() string { + if x != nil { + return x.PostUrl + } + return "" +} + +func (x *PlatformPost) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *PlatformPost) GetCreatedAt() string { + if x != nil { + return x.CreatedAt + } + return "" +} + +// 根据平台获取帖子历史记录请求 +type GetHistoryByPlatformRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *GetHistoryByPlatformRequest) Reset() { + *x = GetHistoryByPlatformRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetHistoryByPlatformRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetHistoryByPlatformRequest) ProtoMessage() {} + +func (x *GetHistoryByPlatformRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetHistoryByPlatformRequest.ProtoReflect.Descriptor instead. +func (*GetHistoryByPlatformRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{32} +} + +func (x *GetHistoryByPlatformRequest) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *GetHistoryByPlatformRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// 根据平台获取帖子历史记录响应 +type GetHistoryByPlatformResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Posts []*PlatformPost `protobuf:"bytes,2,rep,name=posts,proto3" json:"posts"` + LastUpdated string `protobuf:"bytes,3,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,4,opt,name=nextUpdate,proto3" json:"nextUpdate"` +} + +func (x *GetHistoryByPlatformResponse) Reset() { + *x = GetHistoryByPlatformResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetHistoryByPlatformResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetHistoryByPlatformResponse) ProtoMessage() {} + +func (x *GetHistoryByPlatformResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetHistoryByPlatformResponse.ProtoReflect.Descriptor instead. +func (*GetHistoryByPlatformResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{33} +} + +func (x *GetHistoryByPlatformResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GetHistoryByPlatformResponse) GetPosts() []*PlatformPost { + if x != nil { + return x.Posts + } + return nil +} + +func (x *GetHistoryByPlatformResponse) GetLastUpdated() string { + if x != nil { + return x.LastUpdated + } + return "" +} + +func (x *GetHistoryByPlatformResponse) GetNextUpdate() string { + if x != nil { + return x.NextUpdate + } + return "" +} + +// 发送消息请求 +type SendMessageRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` + RecipientId string `protobuf:"bytes,2,opt,name=recipientId,proto3" json:"recipientId"` + Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message"` + MediaUrls []string `protobuf:"bytes,4,rep,name=mediaUrls,proto3" json:"mediaUrls"` + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *SendMessageRequest) Reset() { + *x = SendMessageRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SendMessageRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SendMessageRequest) ProtoMessage() {} + +func (x *SendMessageRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SendMessageRequest.ProtoReflect.Descriptor instead. +func (*SendMessageRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{34} +} + +func (x *SendMessageRequest) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *SendMessageRequest) GetRecipientId() string { + if x != nil { + return x.RecipientId + } + return "" +} + +func (x *SendMessageRequest) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +func (x *SendMessageRequest) GetMediaUrls() []string { + if x != nil { + return x.MediaUrls + } + return nil +} + +func (x *SendMessageRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// 消息项(用于批量消息响应中的单个消息) +type MessageItem struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + RecipientId string `protobuf:"bytes,2,opt,name=recipientId,proto3" json:"recipientId"` + MessageId string `protobuf:"bytes,3,opt,name=messageId,proto3" json:"messageId"` + Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message"` + Type string `protobuf:"bytes,5,opt,name=type,proto3" json:"type"` + MediaUrl string `protobuf:"bytes,6,opt,name=mediaUrl,proto3" json:"mediaUrl"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` +} + +func (x *MessageItem) Reset() { + *x = MessageItem{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MessageItem) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MessageItem) ProtoMessage() {} + +func (x *MessageItem) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MessageItem.ProtoReflect.Descriptor instead. +func (*MessageItem) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{35} +} + +func (x *MessageItem) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *MessageItem) GetRecipientId() string { + if x != nil { + return x.RecipientId + } + return "" +} + +func (x *MessageItem) GetMessageId() string { + if x != nil { + return x.MessageId + } + return "" +} + +func (x *MessageItem) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +func (x *MessageItem) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *MessageItem) GetMediaUrl() string { + if x != nil { + return x.MediaUrl + } + return "" +} + +func (x *MessageItem) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *MessageItem) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +// 发送消息响应 +type SendMessageResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + RecipientId string `protobuf:"bytes,2,opt,name=recipientId,proto3" json:"recipientId"` + MessageId string `protobuf:"bytes,3,opt,name=messageId,proto3" json:"messageId"` + Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message"` // 成功消息的内容或错误消息的内容(根据 status 判断) + Type string `protobuf:"bytes,5,opt,name=type,proto3" json:"type"` + MediaUrl string `protobuf:"bytes,6,opt,name=mediaUrl,proto3" json:"mediaUrl"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` + Messages []*MessageItem `protobuf:"bytes,9,rep,name=messages,proto3" json:"messages"` +} + +func (x *SendMessageResponse) Reset() { + *x = SendMessageResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SendMessageResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SendMessageResponse) ProtoMessage() {} + +func (x *SendMessageResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SendMessageResponse.ProtoReflect.Descriptor instead. +func (*SendMessageResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{36} +} + +func (x *SendMessageResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *SendMessageResponse) GetRecipientId() string { + if x != nil { + return x.RecipientId + } + return "" +} + +func (x *SendMessageResponse) GetMessageId() string { + if x != nil { + return x.MessageId + } + return "" +} + +func (x *SendMessageResponse) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +func (x *SendMessageResponse) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *SendMessageResponse) GetMediaUrl() string { + if x != nil { + return x.MediaUrl + } + return "" +} + +func (x *SendMessageResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *SendMessageResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *SendMessageResponse) GetMessages() []*MessageItem { + if x != nil { + return x.Messages + } + return nil +} + +// 获取消息请求 +type GetMessagesRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + ConversationId string `protobuf:"bytes,3,opt,name=conversationId,proto3" json:"conversationId"` + ConversationsOnly bool `protobuf:"varint,4,opt,name=conversationsOnly,proto3" json:"conversationsOnly"` + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *GetMessagesRequest) Reset() { + *x = GetMessagesRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetMessagesRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetMessagesRequest) ProtoMessage() {} + +func (x *GetMessagesRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[37] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetMessagesRequest.ProtoReflect.Descriptor instead. +func (*GetMessagesRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{37} +} + +func (x *GetMessagesRequest) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *GetMessagesRequest) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GetMessagesRequest) GetConversationId() string { + if x != nil { + return x.ConversationId + } + return "" +} + +func (x *GetMessagesRequest) GetConversationsOnly() bool { + if x != nil { + return x.ConversationsOnly + } + return false +} + +func (x *GetMessagesRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// 消息附件 +type MessageAttachment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type"` + Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url"` +} + +func (x *MessageAttachment) Reset() { + *x = MessageAttachment{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[38] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MessageAttachment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MessageAttachment) ProtoMessage() {} + +func (x *MessageAttachment) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[38] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MessageAttachment.ProtoReflect.Descriptor instead. +func (*MessageAttachment) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{38} +} + +func (x *MessageAttachment) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *MessageAttachment) GetUrl() string { + if x != nil { + return x.Url + } + return "" +} + +// 消息发送者详情 +type MessageSenderDetails struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Picture string `protobuf:"bytes,3,opt,name=picture,proto3" json:"picture"` + ProfileImage string `protobuf:"bytes,4,opt,name=profileImage,proto3" json:"profileImage"` +} + +func (x *MessageSenderDetails) Reset() { + *x = MessageSenderDetails{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[39] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MessageSenderDetails) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MessageSenderDetails) ProtoMessage() {} + +func (x *MessageSenderDetails) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[39] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MessageSenderDetails.ProtoReflect.Descriptor instead. +func (*MessageSenderDetails) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{39} +} + +func (x *MessageSenderDetails) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *MessageSenderDetails) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *MessageSenderDetails) GetPicture() string { + if x != nil { + return x.Picture + } + return "" +} + +func (x *MessageSenderDetails) GetProfileImage() string { + if x != nil { + return x.ProfileImage + } + return "" +} + +// 消息接收者详情 +type MessageRecipientDetails struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Picture string `protobuf:"bytes,3,opt,name=picture,proto3" json:"picture"` +} + +func (x *MessageRecipientDetails) Reset() { + *x = MessageRecipientDetails{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[40] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MessageRecipientDetails) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MessageRecipientDetails) ProtoMessage() {} + +func (x *MessageRecipientDetails) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[40] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MessageRecipientDetails.ProtoReflect.Descriptor instead. +func (*MessageRecipientDetails) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{40} +} + +func (x *MessageRecipientDetails) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *MessageRecipientDetails) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *MessageRecipientDetails) GetPicture() string { + if x != nil { + return x.Picture + } + return "" +} + +// 消息反应(map类型,在proto中用repeated MessageReaction表示) +type MessageReaction struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + UserId string `protobuf:"bytes,1,opt,name=userId,proto3" json:"userId"` + Emoji string `protobuf:"bytes,2,opt,name=emoji,proto3" json:"emoji"` +} + +func (x *MessageReaction) Reset() { + *x = MessageReaction{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[41] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MessageReaction) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MessageReaction) ProtoMessage() {} + +func (x *MessageReaction) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[41] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MessageReaction.ProtoReflect.Descriptor instead. +func (*MessageReaction) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{41} +} + +func (x *MessageReaction) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + +func (x *MessageReaction) GetEmoji() string { + if x != nil { + return x.Emoji + } + return "" +} + +// 获取消息响应中的单个消息项 +type GetMessagesItem struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + SenderId string `protobuf:"bytes,2,opt,name=senderId,proto3" json:"senderId"` + SenderDetails *MessageSenderDetails `protobuf:"bytes,3,opt,name=senderDetails,proto3" json:"senderDetails"` + RecipientId string `protobuf:"bytes,4,opt,name=recipientId,proto3" json:"recipientId"` + RecipientDetails *MessageRecipientDetails `protobuf:"bytes,5,opt,name=recipientDetails,proto3" json:"recipientDetails"` + ConversationId string `protobuf:"bytes,6,opt,name=conversationId,proto3" json:"conversationId"` + Message string `protobuf:"bytes,7,opt,name=message,proto3" json:"message"` + Platform string `protobuf:"bytes,8,opt,name=platform,proto3" json:"platform"` + Action string `protobuf:"bytes,9,opt,name=action,proto3" json:"action"` + Created string `protobuf:"bytes,10,opt,name=created,proto3" json:"created"` + Updated string `protobuf:"bytes,11,opt,name=updated,proto3" json:"updated"` + Attachments []*MessageAttachment `protobuf:"bytes,12,rep,name=attachments,proto3" json:"attachments"` + Reactions []*MessageReaction `protobuf:"bytes,13,rep,name=reactions,proto3" json:"reactions"` +} + +func (x *GetMessagesItem) Reset() { + *x = GetMessagesItem{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[42] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetMessagesItem) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetMessagesItem) ProtoMessage() {} + +func (x *GetMessagesItem) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[42] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetMessagesItem.ProtoReflect.Descriptor instead. +func (*GetMessagesItem) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{42} +} + +func (x *GetMessagesItem) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GetMessagesItem) GetSenderId() string { + if x != nil { + return x.SenderId + } + return "" +} + +func (x *GetMessagesItem) GetSenderDetails() *MessageSenderDetails { + if x != nil { + return x.SenderDetails + } + return nil +} + +func (x *GetMessagesItem) GetRecipientId() string { + if x != nil { + return x.RecipientId + } + return "" +} + +func (x *GetMessagesItem) GetRecipientDetails() *MessageRecipientDetails { + if x != nil { + return x.RecipientDetails + } + return nil +} + +func (x *GetMessagesItem) GetConversationId() string { + if x != nil { + return x.ConversationId + } + return "" +} + +func (x *GetMessagesItem) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +func (x *GetMessagesItem) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *GetMessagesItem) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *GetMessagesItem) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *GetMessagesItem) GetUpdated() string { + if x != nil { + return x.Updated + } + return "" +} + +func (x *GetMessagesItem) GetAttachments() []*MessageAttachment { + if x != nil { + return x.Attachments + } + return nil +} + +func (x *GetMessagesItem) GetReactions() []*MessageReaction { + if x != nil { + return x.Reactions + } + return nil +} + +// 对话参与者 +type ConversationParticipant struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Picture string `protobuf:"bytes,3,opt,name=picture,proto3" json:"picture"` +} + +func (x *ConversationParticipant) Reset() { + *x = ConversationParticipant{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[43] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ConversationParticipant) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ConversationParticipant) ProtoMessage() {} + +func (x *ConversationParticipant) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[43] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ConversationParticipant.ProtoReflect.Descriptor instead. +func (*ConversationParticipant) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{43} +} + +func (x *ConversationParticipant) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *ConversationParticipant) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ConversationParticipant) GetPicture() string { + if x != nil { + return x.Picture + } + return "" +} + +// 对话详情 +type ConversationDetail struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Participant *ConversationParticipant `protobuf:"bytes,2,opt,name=participant,proto3" json:"participant"` + Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status"` + Watermark int64 `protobuf:"varint,4,opt,name=watermark,proto3" json:"watermark"` +} + +func (x *ConversationDetail) Reset() { + *x = ConversationDetail{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[44] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ConversationDetail) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ConversationDetail) ProtoMessage() {} + +func (x *ConversationDetail) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[44] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ConversationDetail.ProtoReflect.Descriptor instead. +func (*ConversationDetail) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{44} +} + +func (x *ConversationDetail) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ConversationDetail) GetParticipant() *ConversationParticipant { + if x != nil { + return x.Participant + } + return nil +} + +func (x *ConversationDetail) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *ConversationDetail) GetWatermark() int64 { + if x != nil { + return x.Watermark + } + return 0 +} + +// 获取消息响应 +type GetMessagesResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Messages []*GetMessagesItem `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages"` + LastUpdated string `protobuf:"bytes,3,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,4,opt,name=nextUpdate,proto3" json:"nextUpdate"` + ConversationIds []string `protobuf:"bytes,5,rep,name=conversationIds,proto3" json:"conversationIds"` + ConversationsDetails []*ConversationDetail `protobuf:"bytes,6,rep,name=conversationsDetails,proto3" json:"conversationsDetails"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` + ErrMsg string `protobuf:"bytes,9,opt,name=errMsg,json=message,proto3" json:"errMsg"` // 错误消息(JSON 字段名为 "message",但 proto 字段名为 errMsg 以区分) +} + +func (x *GetMessagesResponse) Reset() { + *x = GetMessagesResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[45] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetMessagesResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetMessagesResponse) ProtoMessage() {} + +func (x *GetMessagesResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[45] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetMessagesResponse.ProtoReflect.Descriptor instead. +func (*GetMessagesResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{45} +} + +func (x *GetMessagesResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GetMessagesResponse) GetMessages() []*GetMessagesItem { + if x != nil { + return x.Messages + } + return nil +} + +func (x *GetMessagesResponse) GetLastUpdated() string { + if x != nil { + return x.LastUpdated + } + return "" +} + +func (x *GetMessagesResponse) GetNextUpdate() string { + if x != nil { + return x.NextUpdate + } + return "" +} + +func (x *GetMessagesResponse) GetConversationIds() []string { + if x != nil { + return x.ConversationIds + } + return nil +} + +func (x *GetMessagesResponse) GetConversationsDetails() []*ConversationDetail { + if x != nil { + return x.ConversationsDetails + } + return nil +} + +func (x *GetMessagesResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *GetMessagesResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *GetMessagesResponse) GetErrMsg() string { + if x != nil { + return x.ErrMsg + } + return "" +} + +// 发布评论请求 +type PostCommentRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment"` + Platforms []string `protobuf:"bytes,3,rep,name=platforms,proto3" json:"platforms"` + SearchPlatformId bool `protobuf:"varint,4,opt,name=searchPlatformId,proto3" json:"searchPlatformId"` + MediaUrls []string `protobuf:"bytes,5,rep,name=mediaUrls,proto3" json:"mediaUrls"` + ProfileKey string `protobuf:"bytes,6,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *PostCommentRequest) Reset() { + *x = PostCommentRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[46] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PostCommentRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PostCommentRequest) ProtoMessage() {} + +func (x *PostCommentRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[46] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PostCommentRequest.ProtoReflect.Descriptor instead. +func (*PostCommentRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{46} +} + +func (x *PostCommentRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *PostCommentRequest) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *PostCommentRequest) GetPlatforms() []string { + if x != nil { + return x.Platforms + } + return nil +} + +func (x *PostCommentRequest) GetSearchPlatformId() bool { + if x != nil { + return x.SearchPlatformId + } + return false +} + +func (x *PostCommentRequest) GetMediaUrls() []string { + if x != nil { + return x.MediaUrls + } + return nil +} + +func (x *PostCommentRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// Instagram 平台评论响应 +type InstagramCommentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform"` +} + +func (x *InstagramCommentResponse) Reset() { + *x = InstagramCommentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[47] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InstagramCommentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InstagramCommentResponse) ProtoMessage() {} + +func (x *InstagramCommentResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[47] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use InstagramCommentResponse.ProtoReflect.Descriptor instead. +func (*InstagramCommentResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{47} +} + +func (x *InstagramCommentResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *InstagramCommentResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *InstagramCommentResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *InstagramCommentResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +// TikTok 平台评论响应 +type TikTokCommentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform"` + VideoId string `protobuf:"bytes,5,opt,name=videoId,proto3" json:"videoId"` +} + +func (x *TikTokCommentResponse) Reset() { + *x = TikTokCommentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[48] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TikTokCommentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TikTokCommentResponse) ProtoMessage() {} + +func (x *TikTokCommentResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[48] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TikTokCommentResponse.ProtoReflect.Descriptor instead. +func (*TikTokCommentResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{48} +} + +func (x *TikTokCommentResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *TikTokCommentResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *TikTokCommentResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *TikTokCommentResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *TikTokCommentResponse) GetVideoId() string { + if x != nil { + return x.VideoId + } + return "" +} + +// Bluesky 平台评论响应 +type BlueskyCommentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Cid string `protobuf:"bytes,3,opt,name=cid,proto3" json:"cid"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` + PostUrl string `protobuf:"bytes,6,opt,name=postUrl,proto3" json:"postUrl"` +} + +func (x *BlueskyCommentResponse) Reset() { + *x = BlueskyCommentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[49] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BlueskyCommentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BlueskyCommentResponse) ProtoMessage() {} + +func (x *BlueskyCommentResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[49] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BlueskyCommentResponse.ProtoReflect.Descriptor instead. +func (*BlueskyCommentResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{49} +} + +func (x *BlueskyCommentResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *BlueskyCommentResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *BlueskyCommentResponse) GetCid() string { + if x != nil { + return x.Cid + } + return "" +} + +func (x *BlueskyCommentResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *BlueskyCommentResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *BlueskyCommentResponse) GetPostUrl() string { + if x != nil { + return x.PostUrl + } + return "" +} + +// Facebook 平台评论响应 +type FacebookCommentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform"` +} + +func (x *FacebookCommentResponse) Reset() { + *x = FacebookCommentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[50] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *FacebookCommentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FacebookCommentResponse) ProtoMessage() {} + +func (x *FacebookCommentResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[50] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FacebookCommentResponse.ProtoReflect.Descriptor instead. +func (*FacebookCommentResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{50} +} + +func (x *FacebookCommentResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *FacebookCommentResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *FacebookCommentResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *FacebookCommentResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +// LinkedIn 平台评论响应 +type LinkedInCommentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + CommentUrn string `protobuf:"bytes,4,opt,name=commentUrn,proto3" json:"commentUrn"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` +} + +func (x *LinkedInCommentResponse) Reset() { + *x = LinkedInCommentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[51] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LinkedInCommentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LinkedInCommentResponse) ProtoMessage() {} + +func (x *LinkedInCommentResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[51] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LinkedInCommentResponse.ProtoReflect.Descriptor instead. +func (*LinkedInCommentResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{51} +} + +func (x *LinkedInCommentResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *LinkedInCommentResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *LinkedInCommentResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *LinkedInCommentResponse) GetCommentUrn() string { + if x != nil { + return x.CommentUrn + } + return "" +} + +func (x *LinkedInCommentResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +// Twitter/X 平台评论响应 +type TwitterCommentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + PostUrl string `protobuf:"bytes,4,opt,name=postUrl,proto3" json:"postUrl"` +} + +func (x *TwitterCommentResponse) Reset() { + *x = TwitterCommentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[52] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TwitterCommentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TwitterCommentResponse) ProtoMessage() {} + +func (x *TwitterCommentResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[52] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TwitterCommentResponse.ProtoReflect.Descriptor instead. +func (*TwitterCommentResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{52} +} + +func (x *TwitterCommentResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *TwitterCommentResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *TwitterCommentResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *TwitterCommentResponse) GetPostUrl() string { + if x != nil { + return x.PostUrl + } + return "" +} + +// YouTube 平台评论响应 +type YouTubeCommentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform"` +} + +func (x *YouTubeCommentResponse) Reset() { + *x = YouTubeCommentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[53] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *YouTubeCommentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*YouTubeCommentResponse) ProtoMessage() {} + +func (x *YouTubeCommentResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[53] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use YouTubeCommentResponse.ProtoReflect.Descriptor instead. +func (*YouTubeCommentResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{53} +} + +func (x *YouTubeCommentResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *YouTubeCommentResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *YouTubeCommentResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *YouTubeCommentResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +// 平台错误信息 +type PlatformError struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + Code int32 `protobuf:"varint,3,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` +} + +func (x *PlatformError) Reset() { + *x = PlatformError{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[54] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PlatformError) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PlatformError) ProtoMessage() {} + +func (x *PlatformError) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[54] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PlatformError.ProtoReflect.Descriptor instead. +func (*PlatformError) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{54} +} + +func (x *PlatformError) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *PlatformError) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *PlatformError) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *PlatformError) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +func (x *PlatformError) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +// 发布评论响应 +type PostCommentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentID string `protobuf:"bytes,2,opt,name=commentID,proto3" json:"commentID"` + CommentIdAlt string `protobuf:"bytes,3,opt,name=commentIdAlt,json=commentId,proto3" json:"commentIdAlt"` // 备用字段,用于错误响应 + Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id"` + Instagram *InstagramCommentResponse `protobuf:"bytes,5,opt,name=instagram,proto3" json:"instagram"` + Tiktok *TikTokCommentResponse `protobuf:"bytes,6,opt,name=tiktok,proto3" json:"tiktok"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,9,opt,name=message,proto3" json:"message"` + Platform string `protobuf:"bytes,10,opt,name=platform,proto3" json:"platform"` + Errors []*PlatformError `protobuf:"bytes,11,rep,name=errors,proto3" json:"errors"` + // 其它平台的发布评论结果 + Bluesky *BlueskyCommentResponse `protobuf:"bytes,12,opt,name=bluesky,proto3" json:"bluesky"` + Facebook *FacebookCommentResponse `protobuf:"bytes,13,opt,name=facebook,proto3" json:"facebook"` + Linkedin *LinkedInCommentResponse `protobuf:"bytes,14,opt,name=linkedin,proto3" json:"linkedin"` + Twitter *TwitterCommentResponse `protobuf:"bytes,15,opt,name=twitter,proto3" json:"twitter"` + Youtube *YouTubeCommentResponse `protobuf:"bytes,16,opt,name=youtube,proto3" json:"youtube"` +} + +func (x *PostCommentResponse) Reset() { + *x = PostCommentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[55] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *PostCommentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*PostCommentResponse) ProtoMessage() {} + +func (x *PostCommentResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[55] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use PostCommentResponse.ProtoReflect.Descriptor instead. +func (*PostCommentResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{55} +} + +func (x *PostCommentResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *PostCommentResponse) GetCommentID() string { + if x != nil { + return x.CommentID + } + return "" +} + +func (x *PostCommentResponse) GetCommentIdAlt() string { + if x != nil { + return x.CommentIdAlt + } + return "" +} + +func (x *PostCommentResponse) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *PostCommentResponse) GetInstagram() *InstagramCommentResponse { + if x != nil { + return x.Instagram + } + return nil +} + +func (x *PostCommentResponse) GetTiktok() *TikTokCommentResponse { + if x != nil { + return x.Tiktok + } + return nil +} + +func (x *PostCommentResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *PostCommentResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *PostCommentResponse) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +func (x *PostCommentResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *PostCommentResponse) GetErrors() []*PlatformError { + if x != nil { + return x.Errors + } + return nil +} + +func (x *PostCommentResponse) GetBluesky() *BlueskyCommentResponse { + if x != nil { + return x.Bluesky + } + return nil +} + +func (x *PostCommentResponse) GetFacebook() *FacebookCommentResponse { + if x != nil { + return x.Facebook + } + return nil +} + +func (x *PostCommentResponse) GetLinkedin() *LinkedInCommentResponse { + if x != nil { + return x.Linkedin + } + return nil +} + +func (x *PostCommentResponse) GetTwitter() *TwitterCommentResponse { + if x != nil { + return x.Twitter + } + return nil +} + +func (x *PostCommentResponse) GetYoutube() *YouTubeCommentResponse { + if x != nil { + return x.Youtube + } + return nil +} + +// 获取评论请求 +type GetCommentRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *GetCommentRequest) Reset() { + *x = GetCommentRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[56] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetCommentRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetCommentRequest) ProtoMessage() {} + +func (x *GetCommentRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[56] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetCommentRequest.ProtoReflect.Descriptor instead. +func (*GetCommentRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{56} +} + +func (x *GetCommentRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GetCommentRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// Instagram 用户信息 +type InstagramUser struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username"` +} + +func (x *InstagramUser) Reset() { + *x = InstagramUser{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[57] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InstagramUser) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InstagramUser) ProtoMessage() {} + +func (x *InstagramUser) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[57] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use InstagramUser.ProtoReflect.Descriptor instead. +func (*InstagramUser) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{57} +} + +func (x *InstagramUser) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *InstagramUser) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *InstagramUser) GetUsername() string { + if x != nil { + return x.Username + } + return "" +} + +// Instagram 用户ID信息 +type InstagramUserInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` +} + +func (x *InstagramUserInfo) Reset() { + *x = InstagramUserInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[58] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InstagramUserInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InstagramUserInfo) ProtoMessage() {} + +func (x *InstagramUserInfo) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[58] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use InstagramUserInfo.ProtoReflect.Descriptor instead. +func (*InstagramUserInfo) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{58} +} + +func (x *InstagramUserInfo) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +// Instagram 评论详情 +type InstagramComment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + From *InstagramUser `protobuf:"bytes,5,opt,name=from,proto3" json:"from"` + Hidden bool `protobuf:"varint,6,opt,name=hidden,proto3" json:"hidden"` + LikeCount int32 `protobuf:"varint,7,opt,name=likeCount,proto3" json:"likeCount"` + ParentId string `protobuf:"bytes,8,opt,name=parentId,proto3" json:"parentId"` + Platform string `protobuf:"bytes,9,opt,name=platform,proto3" json:"platform"` + PostId string `protobuf:"bytes,10,opt,name=postId,proto3" json:"postId"` + Replies []*InstagramComment `protobuf:"bytes,11,rep,name=replies,proto3" json:"replies"` + User *InstagramUserInfo `protobuf:"bytes,12,opt,name=user,proto3" json:"user"` + UserName string `protobuf:"bytes,13,opt,name=userName,proto3" json:"userName"` + UsernameAlt string `protobuf:"bytes,14,opt,name=usernameAlt,json=username,proto3" json:"usernameAlt"` // 备用字段,用于回复评论 +} + +func (x *InstagramComment) Reset() { + *x = InstagramComment{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[59] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InstagramComment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InstagramComment) ProtoMessage() {} + +func (x *InstagramComment) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[59] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use InstagramComment.ProtoReflect.Descriptor instead. +func (*InstagramComment) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{59} +} + +func (x *InstagramComment) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *InstagramComment) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *InstagramComment) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *InstagramComment) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *InstagramComment) GetFrom() *InstagramUser { + if x != nil { + return x.From + } + return nil +} + +func (x *InstagramComment) GetHidden() bool { + if x != nil { + return x.Hidden + } + return false +} + +func (x *InstagramComment) GetLikeCount() int32 { + if x != nil { + return x.LikeCount + } + return 0 +} + +func (x *InstagramComment) GetParentId() string { + if x != nil { + return x.ParentId + } + return "" +} + +func (x *InstagramComment) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *InstagramComment) GetPostId() string { + if x != nil { + return x.PostId + } + return "" +} + +func (x *InstagramComment) GetReplies() []*InstagramComment { + if x != nil { + return x.Replies + } + return nil +} + +func (x *InstagramComment) GetUser() *InstagramUserInfo { + if x != nil { + return x.User + } + return nil +} + +func (x *InstagramComment) GetUserName() string { + if x != nil { + return x.UserName + } + return "" +} + +func (x *InstagramComment) GetUsernameAlt() string { + if x != nil { + return x.UsernameAlt + } + return "" +} + +// TikTok 评论详情 +type TikTokComment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,3,opt,name=created,proto3" json:"created"` + CreateTime string `protobuf:"bytes,4,opt,name=createTime,proto3" json:"createTime"` + DisplayName string `protobuf:"bytes,5,opt,name=displayName,proto3" json:"displayName"` + Liked bool `protobuf:"varint,6,opt,name=liked,proto3" json:"liked"` + Likes int32 `protobuf:"varint,7,opt,name=likes,proto3" json:"likes"` + LikeCount int32 `protobuf:"varint,8,opt,name=likeCount,proto3" json:"likeCount"` + Owner bool `protobuf:"varint,9,opt,name=owner,proto3" json:"owner"` + ParentCommentId string `protobuf:"bytes,10,opt,name=parentCommentId,proto3" json:"parentCommentId"` + Pinned bool `protobuf:"varint,11,opt,name=pinned,proto3" json:"pinned"` + Platform string `protobuf:"bytes,12,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,13,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + Replies []*TikTokComment `protobuf:"bytes,14,rep,name=replies,proto3" json:"replies"` + Status string `protobuf:"bytes,15,opt,name=status,proto3" json:"status"` + UserId string `protobuf:"bytes,16,opt,name=userId,proto3" json:"userId"` + Username string `protobuf:"bytes,17,opt,name=username,proto3" json:"username"` + VideoId string `protobuf:"bytes,18,opt,name=videoId,proto3" json:"videoId"` + Visibility string `protobuf:"bytes,19,opt,name=visibility,proto3" json:"visibility"` +} + +func (x *TikTokComment) Reset() { + *x = TikTokComment{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[60] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TikTokComment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TikTokComment) ProtoMessage() {} + +func (x *TikTokComment) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[60] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TikTokComment.ProtoReflect.Descriptor instead. +func (*TikTokComment) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{60} +} + +func (x *TikTokComment) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *TikTokComment) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *TikTokComment) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *TikTokComment) GetCreateTime() string { + if x != nil { + return x.CreateTime + } + return "" +} + +func (x *TikTokComment) GetDisplayName() string { + if x != nil { + return x.DisplayName + } + return "" +} + +func (x *TikTokComment) GetLiked() bool { + if x != nil { + return x.Liked + } + return false +} + +func (x *TikTokComment) GetLikes() int32 { + if x != nil { + return x.Likes + } + return 0 +} + +func (x *TikTokComment) GetLikeCount() int32 { + if x != nil { + return x.LikeCount + } + return 0 +} + +func (x *TikTokComment) GetOwner() bool { + if x != nil { + return x.Owner + } + return false +} + +func (x *TikTokComment) GetParentCommentId() string { + if x != nil { + return x.ParentCommentId + } + return "" +} + +func (x *TikTokComment) GetPinned() bool { + if x != nil { + return x.Pinned + } + return false +} + +func (x *TikTokComment) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *TikTokComment) GetProfileImageUrl() string { + if x != nil { + return x.ProfileImageUrl + } + return "" +} + +func (x *TikTokComment) GetReplies() []*TikTokComment { + if x != nil { + return x.Replies + } + return nil +} + +func (x *TikTokComment) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *TikTokComment) GetUserId() string { + if x != nil { + return x.UserId + } + return "" +} + +func (x *TikTokComment) GetUsername() string { + if x != nil { + return x.Username + } + return "" +} + +func (x *TikTokComment) GetVideoId() string { + if x != nil { + return x.VideoId + } + return "" +} + +func (x *TikTokComment) GetVisibility() string { + if x != nil { + return x.Visibility + } + return "" +} + +// Bluesky 评论详情 +type BlueskyComment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,3,opt,name=created,proto3" json:"created"` + DisplayName string `protobuf:"bytes,4,opt,name=displayName,proto3" json:"displayName"` + LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount"` + Platform string `protobuf:"bytes,6,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,7,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + QuoteCount int32 `protobuf:"varint,8,opt,name=quoteCount,proto3" json:"quoteCount"` + Replies []*BlueskyComment `protobuf:"bytes,9,rep,name=replies,proto3" json:"replies"` + ReplyCount int32 `protobuf:"varint,10,opt,name=replyCount,proto3" json:"replyCount"` + ReplyTo string `protobuf:"bytes,11,opt,name=replyTo,proto3" json:"replyTo"` + RepostCount int32 `protobuf:"varint,12,opt,name=repostCount,proto3" json:"repostCount"` + UserName string `protobuf:"bytes,13,opt,name=userName,proto3" json:"userName"` +} + +func (x *BlueskyComment) Reset() { + *x = BlueskyComment{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[61] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BlueskyComment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BlueskyComment) ProtoMessage() {} + +func (x *BlueskyComment) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[61] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BlueskyComment.ProtoReflect.Descriptor instead. +func (*BlueskyComment) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{61} +} + +func (x *BlueskyComment) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *BlueskyComment) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *BlueskyComment) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *BlueskyComment) GetDisplayName() string { + if x != nil { + return x.DisplayName + } + return "" +} + +func (x *BlueskyComment) GetLikeCount() int32 { + if x != nil { + return x.LikeCount + } + return 0 +} + +func (x *BlueskyComment) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *BlueskyComment) GetProfileImageUrl() string { + if x != nil { + return x.ProfileImageUrl + } + return "" +} + +func (x *BlueskyComment) GetQuoteCount() int32 { + if x != nil { + return x.QuoteCount + } + return 0 +} + +func (x *BlueskyComment) GetReplies() []*BlueskyComment { + if x != nil { + return x.Replies + } + return nil +} + +func (x *BlueskyComment) GetReplyCount() int32 { + if x != nil { + return x.ReplyCount + } + return 0 +} + +func (x *BlueskyComment) GetReplyTo() string { + if x != nil { + return x.ReplyTo + } + return "" +} + +func (x *BlueskyComment) GetRepostCount() int32 { + if x != nil { + return x.RepostCount + } + return 0 +} + +func (x *BlueskyComment) GetUserName() string { + if x != nil { + return x.UserName + } + return "" +} + +// Facebook 用户信息 +type FacebookUser struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` +} + +func (x *FacebookUser) Reset() { + *x = FacebookUser{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[62] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *FacebookUser) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FacebookUser) ProtoMessage() {} + +func (x *FacebookUser) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[62] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FacebookUser.ProtoReflect.Descriptor instead. +func (*FacebookUser) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{62} +} + +func (x *FacebookUser) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *FacebookUser) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +// Facebook 父级评论/帖子信息 +type FacebookParent struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CreatedTime string `protobuf:"bytes,1,opt,name=createdTime,proto3" json:"createdTime"` + From *FacebookUser `protobuf:"bytes,2,opt,name=from,proto3" json:"from"` + Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message"` + Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id"` +} + +func (x *FacebookParent) Reset() { + *x = FacebookParent{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[63] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *FacebookParent) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FacebookParent) ProtoMessage() {} + +func (x *FacebookParent) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[63] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FacebookParent.ProtoReflect.Descriptor instead. +func (*FacebookParent) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{63} +} + +func (x *FacebookParent) GetCreatedTime() string { + if x != nil { + return x.CreatedTime + } + return "" +} + +func (x *FacebookParent) GetFrom() *FacebookUser { + if x != nil { + return x.From + } + return nil +} + +func (x *FacebookParent) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +func (x *FacebookParent) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +// Facebook 评论详情(用于主评论和回复) +type FacebookComment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + CommentCount int32 `protobuf:"varint,3,opt,name=commentCount,proto3" json:"commentCount"` + CommentUrl string `protobuf:"bytes,4,opt,name=commentUrl,proto3" json:"commentUrl"` + Company bool `protobuf:"varint,5,opt,name=company,proto3" json:"company"` + Created string `protobuf:"bytes,6,opt,name=created,proto3" json:"created"` + From *FacebookUser `protobuf:"bytes,7,opt,name=from,proto3" json:"from"` + LikeCount int32 `protobuf:"varint,8,opt,name=likeCount,proto3" json:"likeCount"` + Parent *FacebookParent `protobuf:"bytes,9,opt,name=parent,proto3" json:"parent"` + Platform string `protobuf:"bytes,10,opt,name=platform,proto3" json:"platform"` + UserLikes bool `protobuf:"varint,11,opt,name=userLikes,proto3" json:"userLikes"` + Replies []*FacebookComment `protobuf:"bytes,12,rep,name=replies,proto3" json:"replies"` +} + +func (x *FacebookComment) Reset() { + *x = FacebookComment{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[64] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *FacebookComment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FacebookComment) ProtoMessage() {} + +func (x *FacebookComment) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[64] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FacebookComment.ProtoReflect.Descriptor instead. +func (*FacebookComment) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{64} +} + +func (x *FacebookComment) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *FacebookComment) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *FacebookComment) GetCommentCount() int32 { + if x != nil { + return x.CommentCount + } + return 0 +} + +func (x *FacebookComment) GetCommentUrl() string { + if x != nil { + return x.CommentUrl + } + return "" +} + +func (x *FacebookComment) GetCompany() bool { + if x != nil { + return x.Company + } + return false +} + +func (x *FacebookComment) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *FacebookComment) GetFrom() *FacebookUser { + if x != nil { + return x.From + } + return nil +} + +func (x *FacebookComment) GetLikeCount() int32 { + if x != nil { + return x.LikeCount + } + return 0 +} + +func (x *FacebookComment) GetParent() *FacebookParent { + if x != nil { + return x.Parent + } + return nil +} + +func (x *FacebookComment) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *FacebookComment) GetUserLikes() bool { + if x != nil { + return x.UserLikes + } + return false +} + +func (x *FacebookComment) GetReplies() []*FacebookComment { + if x != nil { + return x.Replies + } + return nil +} + +// LinkedIn 评论中的媒体信息 +type LinkedInMedia struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type"` + Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url"` +} + +func (x *LinkedInMedia) Reset() { + *x = LinkedInMedia{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[65] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LinkedInMedia) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LinkedInMedia) ProtoMessage() {} + +func (x *LinkedInMedia) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[65] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LinkedInMedia.ProtoReflect.Descriptor instead. +func (*LinkedInMedia) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{65} +} + +func (x *LinkedInMedia) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *LinkedInMedia) GetUrl() string { + if x != nil { + return x.Url + } + return "" +} + +// LinkedIn 评论发布者信息 +type LinkedInFrom struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url"` + Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description"` +} + +func (x *LinkedInFrom) Reset() { + *x = LinkedInFrom{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[66] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LinkedInFrom) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LinkedInFrom) ProtoMessage() {} + +func (x *LinkedInFrom) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[66] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LinkedInFrom.ProtoReflect.Descriptor instead. +func (*LinkedInFrom) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{66} +} + +func (x *LinkedInFrom) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *LinkedInFrom) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *LinkedInFrom) GetUrl() string { + if x != nil { + return x.Url + } + return "" +} + +func (x *LinkedInFrom) GetDescription() string { + if x != nil { + return x.Description + } + return "" +} + +// LinkedIn 评论详情 +type LinkedInComment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + CommentUrn string `protobuf:"bytes,3,opt,name=commentUrn,proto3" json:"commentUrn"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + From *LinkedInFrom `protobuf:"bytes,5,opt,name=from,proto3" json:"from"` + LikeCount int32 `protobuf:"varint,6,opt,name=likeCount,proto3" json:"likeCount"` + Media []*LinkedInMedia `protobuf:"bytes,7,rep,name=media,proto3" json:"media"` + Platform string `protobuf:"bytes,8,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,9,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + UserName string `protobuf:"bytes,10,opt,name=userName,proto3" json:"userName"` + Founded int32 `protobuf:"varint,11,opt,name=founded,proto3" json:"founded"` + OrganizationType string `protobuf:"bytes,12,opt,name=organizationType,proto3" json:"organizationType"` + Website string `protobuf:"bytes,13,opt,name=website,proto3" json:"website"` +} + +func (x *LinkedInComment) Reset() { + *x = LinkedInComment{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[67] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LinkedInComment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LinkedInComment) ProtoMessage() {} + +func (x *LinkedInComment) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[67] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LinkedInComment.ProtoReflect.Descriptor instead. +func (*LinkedInComment) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{67} +} + +func (x *LinkedInComment) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *LinkedInComment) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *LinkedInComment) GetCommentUrn() string { + if x != nil { + return x.CommentUrn + } + return "" +} + +func (x *LinkedInComment) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *LinkedInComment) GetFrom() *LinkedInFrom { + if x != nil { + return x.From + } + return nil +} + +func (x *LinkedInComment) GetLikeCount() int32 { + if x != nil { + return x.LikeCount + } + return 0 +} + +func (x *LinkedInComment) GetMedia() []*LinkedInMedia { + if x != nil { + return x.Media + } + return nil +} + +func (x *LinkedInComment) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *LinkedInComment) GetProfileImageUrl() string { + if x != nil { + return x.ProfileImageUrl + } + return "" +} + +func (x *LinkedInComment) GetUserName() string { + if x != nil { + return x.UserName + } + return "" +} + +func (x *LinkedInComment) GetFounded() int32 { + if x != nil { + return x.Founded + } + return 0 +} + +func (x *LinkedInComment) GetOrganizationType() string { + if x != nil { + return x.OrganizationType + } + return "" +} + +func (x *LinkedInComment) GetWebsite() string { + if x != nil { + return x.Website + } + return "" +} + +// Reddit 用户信息 +type RedditUser struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` +} + +func (x *RedditUser) Reset() { + *x = RedditUser{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[68] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RedditUser) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RedditUser) ProtoMessage() {} + +func (x *RedditUser) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[68] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RedditUser.ProtoReflect.Descriptor instead. +func (*RedditUser) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{68} +} + +func (x *RedditUser) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *RedditUser) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +// Reddit 评论详情 +type RedditComment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,3,opt,name=created,proto3" json:"created"` + From *RedditUser `protobuf:"bytes,4,opt,name=from,proto3" json:"from"` + CommentUrl string `protobuf:"bytes,5,opt,name=commentUrl,proto3" json:"commentUrl"` + Subreddit string `protobuf:"bytes,6,opt,name=subreddit,proto3" json:"subreddit"` + Ups int32 `protobuf:"varint,7,opt,name=ups,proto3" json:"ups"` + IsSubmitter bool `protobuf:"varint,8,opt,name=isSubmitter,proto3" json:"isSubmitter"` +} + +func (x *RedditComment) Reset() { + *x = RedditComment{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[69] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RedditComment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RedditComment) ProtoMessage() {} + +func (x *RedditComment) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[69] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RedditComment.ProtoReflect.Descriptor instead. +func (*RedditComment) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{69} +} + +func (x *RedditComment) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *RedditComment) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *RedditComment) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *RedditComment) GetFrom() *RedditUser { + if x != nil { + return x.From + } + return nil +} + +func (x *RedditComment) GetCommentUrl() string { + if x != nil { + return x.CommentUrl + } + return "" +} + +func (x *RedditComment) GetSubreddit() string { + if x != nil { + return x.Subreddit + } + return "" +} + +func (x *RedditComment) GetUps() int32 { + if x != nil { + return x.Ups + } + return 0 +} + +func (x *RedditComment) GetIsSubmitter() bool { + if x != nil { + return x.IsSubmitter + } + return false +} + +// Threads 评论详情(用于主评论和回复) +type ThreadsComment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + CommentUrl string `protobuf:"bytes,3,opt,name=commentUrl,proto3" json:"commentUrl"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + HasReplies bool `protobuf:"varint,5,opt,name=hasReplies,proto3" json:"hasReplies"` + IsQuotePost bool `protobuf:"varint,6,opt,name=isQuotePost,proto3" json:"isQuotePost"` + IsReply bool `protobuf:"varint,7,opt,name=isReply,proto3" json:"isReply"` + IsReplyOwnedByMe bool `protobuf:"varint,8,opt,name=isReplyOwnedByMe,proto3" json:"isReplyOwnedByMe"` + MediaType string `protobuf:"bytes,9,opt,name=mediaType,proto3" json:"mediaType"` + ParentId string `protobuf:"bytes,10,opt,name=parentId,proto3" json:"parentId"` + Platform string `protobuf:"bytes,11,opt,name=platform,proto3" json:"platform"` + PostId string `protobuf:"bytes,12,opt,name=postId,proto3" json:"postId"` + Replies []*ThreadsComment `protobuf:"bytes,13,rep,name=replies,proto3" json:"replies"` + ReplyAudience string `protobuf:"bytes,14,opt,name=replyAudience,proto3" json:"replyAudience"` + Shortcode string `protobuf:"bytes,15,opt,name=shortcode,proto3" json:"shortcode"` + UserName string `protobuf:"bytes,16,opt,name=userName,proto3" json:"userName"` +} + +func (x *ThreadsComment) Reset() { + *x = ThreadsComment{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[70] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ThreadsComment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ThreadsComment) ProtoMessage() {} + +func (x *ThreadsComment) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[70] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ThreadsComment.ProtoReflect.Descriptor instead. +func (*ThreadsComment) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{70} +} + +func (x *ThreadsComment) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *ThreadsComment) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *ThreadsComment) GetCommentUrl() string { + if x != nil { + return x.CommentUrl + } + return "" +} + +func (x *ThreadsComment) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *ThreadsComment) GetHasReplies() bool { + if x != nil { + return x.HasReplies + } + return false +} + +func (x *ThreadsComment) GetIsQuotePost() bool { + if x != nil { + return x.IsQuotePost + } + return false +} + +func (x *ThreadsComment) GetIsReply() bool { + if x != nil { + return x.IsReply + } + return false +} + +func (x *ThreadsComment) GetIsReplyOwnedByMe() bool { + if x != nil { + return x.IsReplyOwnedByMe + } + return false +} + +func (x *ThreadsComment) GetMediaType() string { + if x != nil { + return x.MediaType + } + return "" +} + +func (x *ThreadsComment) GetParentId() string { + if x != nil { + return x.ParentId + } + return "" +} + +func (x *ThreadsComment) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *ThreadsComment) GetPostId() string { + if x != nil { + return x.PostId + } + return "" +} + +func (x *ThreadsComment) GetReplies() []*ThreadsComment { + if x != nil { + return x.Replies + } + return nil +} + +func (x *ThreadsComment) GetReplyAudience() string { + if x != nil { + return x.ReplyAudience + } + return "" +} + +func (x *ThreadsComment) GetShortcode() string { + if x != nil { + return x.Shortcode + } + return "" +} + +func (x *ThreadsComment) GetUserName() string { + if x != nil { + return x.UserName + } + return "" +} + +// Twitter/X 用户公共指标(用户维度,用于 Get Comments 返回) +type TwitterPublicMetrics struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FollowersCount int32 `protobuf:"varint,1,opt,name=followersCount,proto3" json:"followersCount"` + FollowingCount int32 `protobuf:"varint,2,opt,name=followingCount,proto3" json:"followingCount"` + TweetCount int32 `protobuf:"varint,3,opt,name=tweetCount,proto3" json:"tweetCount"` + ListedCount int32 `protobuf:"varint,4,opt,name=listedCount,proto3" json:"listedCount"` + LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount"` + MediaCount int32 `protobuf:"varint,6,opt,name=mediaCount,proto3" json:"mediaCount"` +} + +func (x *TwitterPublicMetrics) Reset() { + *x = TwitterPublicMetrics{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[71] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TwitterPublicMetrics) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TwitterPublicMetrics) ProtoMessage() {} + +func (x *TwitterPublicMetrics) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[71] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TwitterPublicMetrics.ProtoReflect.Descriptor instead. +func (*TwitterPublicMetrics) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{71} +} + +func (x *TwitterPublicMetrics) GetFollowersCount() int32 { + if x != nil { + return x.FollowersCount + } + return 0 +} + +func (x *TwitterPublicMetrics) GetFollowingCount() int32 { + if x != nil { + return x.FollowingCount + } + return 0 +} + +func (x *TwitterPublicMetrics) GetTweetCount() int32 { + if x != nil { + return x.TweetCount + } + return 0 +} + +func (x *TwitterPublicMetrics) GetListedCount() int32 { + if x != nil { + return x.ListedCount + } + return 0 +} + +func (x *TwitterPublicMetrics) GetLikeCount() int32 { + if x != nil { + return x.LikeCount + } + return 0 +} + +func (x *TwitterPublicMetrics) GetMediaCount() int32 { + if x != nil { + return x.MediaCount + } + return 0 +} + +// Twitter/X 被引用或回复的 Tweet 信息 +type TwitterReferencedTweet struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` +} + +func (x *TwitterReferencedTweet) Reset() { + *x = TwitterReferencedTweet{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[72] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TwitterReferencedTweet) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TwitterReferencedTweet) ProtoMessage() {} + +func (x *TwitterReferencedTweet) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[72] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TwitterReferencedTweet.ProtoReflect.Descriptor instead. +func (*TwitterReferencedTweet) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{72} +} + +func (x *TwitterReferencedTweet) GetType() string { + if x != nil { + return x.Type + } + return "" +} + +func (x *TwitterReferencedTweet) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +// Twitter/X 被回复的用户信息 +type TwitterReplyTo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CreatedAt string `protobuf:"bytes,1,opt,name=createdAt,proto3" json:"createdAt"` + Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` + Location string `protobuf:"bytes,4,opt,name=location,proto3" json:"location"` + Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name"` + ProfileImageUrl string `protobuf:"bytes,6,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + PublicMetrics *TwitterPublicMetrics `protobuf:"bytes,7,opt,name=publicMetrics,proto3" json:"publicMetrics"` + Url string `protobuf:"bytes,8,opt,name=url,proto3" json:"url"` + Username string `protobuf:"bytes,9,opt,name=username,proto3" json:"username"` +} + +func (x *TwitterReplyTo) Reset() { + *x = TwitterReplyTo{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[73] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TwitterReplyTo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TwitterReplyTo) ProtoMessage() {} + +func (x *TwitterReplyTo) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[73] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TwitterReplyTo.ProtoReflect.Descriptor instead. +func (*TwitterReplyTo) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{73} +} + +func (x *TwitterReplyTo) GetCreatedAt() string { + if x != nil { + return x.CreatedAt + } + return "" +} + +func (x *TwitterReplyTo) GetDescription() string { + if x != nil { + return x.Description + } + return "" +} + +func (x *TwitterReplyTo) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *TwitterReplyTo) GetLocation() string { + if x != nil { + return x.Location + } + return "" +} + +func (x *TwitterReplyTo) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *TwitterReplyTo) GetProfileImageUrl() string { + if x != nil { + return x.ProfileImageUrl + } + return "" +} + +func (x *TwitterReplyTo) GetPublicMetrics() *TwitterPublicMetrics { + if x != nil { + return x.PublicMetrics + } + return nil +} + +func (x *TwitterReplyTo) GetUrl() string { + if x != nil { + return x.Url + } + return "" +} + +func (x *TwitterReplyTo) GetUsername() string { + if x != nil { + return x.Username + } + return "" +} + +// Twitter/X 评论详情 +type TwitterComment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + BookmarkCount int32 `protobuf:"varint,1,opt,name=bookmarkCount,proto3" json:"bookmarkCount"` + Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description"` + Id string `protobuf:"bytes,6,opt,name=id,proto3" json:"id"` + ImpressionCount int32 `protobuf:"varint,7,opt,name=impressionCount,proto3" json:"impressionCount"` + LikeCount int32 `protobuf:"varint,8,opt,name=likeCount,proto3" json:"likeCount"` + Name string `protobuf:"bytes,9,opt,name=name,proto3" json:"name"` + Platform string `protobuf:"bytes,10,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,11,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + PublicMetrics *TwitterPublicMetrics `protobuf:"bytes,12,opt,name=publicMetrics,proto3" json:"publicMetrics"` + QuoteCount int32 `protobuf:"varint,13,opt,name=quoteCount,proto3" json:"quoteCount"` + ReferencedTweets []*TwitterReferencedTweet `protobuf:"bytes,14,rep,name=referencedTweets,proto3" json:"referencedTweets"` + ReplyCount int32 `protobuf:"varint,15,opt,name=replyCount,proto3" json:"replyCount"` + ReplyTo *TwitterReplyTo `protobuf:"bytes,16,opt,name=replyTo,proto3" json:"replyTo"` + ThreadNumber int32 `protobuf:"varint,17,opt,name=threadNumber,proto3" json:"threadNumber"` + UserName string `protobuf:"bytes,18,opt,name=userName,proto3" json:"userName"` +} + +func (x *TwitterComment) Reset() { + *x = TwitterComment{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[74] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TwitterComment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TwitterComment) ProtoMessage() {} + +func (x *TwitterComment) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[74] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TwitterComment.ProtoReflect.Descriptor instead. +func (*TwitterComment) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{74} +} + +func (x *TwitterComment) GetBookmarkCount() int32 { + if x != nil { + return x.BookmarkCount + } + return 0 +} + +func (x *TwitterComment) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *TwitterComment) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *TwitterComment) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *TwitterComment) GetDescription() string { + if x != nil { + return x.Description + } + return "" +} + +func (x *TwitterComment) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *TwitterComment) GetImpressionCount() int32 { + if x != nil { + return x.ImpressionCount + } + return 0 +} + +func (x *TwitterComment) GetLikeCount() int32 { + if x != nil { + return x.LikeCount + } + return 0 +} + +func (x *TwitterComment) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +func (x *TwitterComment) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *TwitterComment) GetProfileImageUrl() string { + if x != nil { + return x.ProfileImageUrl + } + return "" +} + +func (x *TwitterComment) GetPublicMetrics() *TwitterPublicMetrics { + if x != nil { + return x.PublicMetrics + } + return nil +} + +func (x *TwitterComment) GetQuoteCount() int32 { + if x != nil { + return x.QuoteCount + } + return 0 +} + +func (x *TwitterComment) GetReferencedTweets() []*TwitterReferencedTweet { + if x != nil { + return x.ReferencedTweets + } + return nil +} + +func (x *TwitterComment) GetReplyCount() int32 { + if x != nil { + return x.ReplyCount + } + return 0 +} + +func (x *TwitterComment) GetReplyTo() *TwitterReplyTo { + if x != nil { + return x.ReplyTo + } + return nil +} + +func (x *TwitterComment) GetThreadNumber() int32 { + if x != nil { + return x.ThreadNumber + } + return 0 +} + +func (x *TwitterComment) GetUserName() string { + if x != nil { + return x.UserName + } + return "" +} + +// YouTube 回复评论详情 +type YouTubeReply struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ChannelUrl string `protobuf:"bytes,1,opt,name=channelUrl,proto3" json:"channelUrl"` + Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount"` + Platform string `protobuf:"bytes,6,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,7,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + UserName string `protobuf:"bytes,8,opt,name=userName,proto3" json:"userName"` + ParentId string `protobuf:"bytes,9,opt,name=parentId,proto3" json:"parentId"` +} + +func (x *YouTubeReply) Reset() { + *x = YouTubeReply{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[75] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *YouTubeReply) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*YouTubeReply) ProtoMessage() {} + +func (x *YouTubeReply) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[75] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use YouTubeReply.ProtoReflect.Descriptor instead. +func (*YouTubeReply) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{75} +} + +func (x *YouTubeReply) GetChannelUrl() string { + if x != nil { + return x.ChannelUrl + } + return "" +} + +func (x *YouTubeReply) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *YouTubeReply) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *YouTubeReply) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *YouTubeReply) GetLikeCount() int32 { + if x != nil { + return x.LikeCount + } + return 0 +} + +func (x *YouTubeReply) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *YouTubeReply) GetProfileImageUrl() string { + if x != nil { + return x.ProfileImageUrl + } + return "" +} + +func (x *YouTubeReply) GetUserName() string { + if x != nil { + return x.UserName + } + return "" +} + +func (x *YouTubeReply) GetParentId() string { + if x != nil { + return x.ParentId + } + return "" +} + +// YouTube 评论详情 +type YouTubeComment struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ChannelUrl string `protobuf:"bytes,1,opt,name=channelUrl,proto3" json:"channelUrl"` + Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + IsPublic bool `protobuf:"varint,5,opt,name=isPublic,proto3" json:"isPublic"` + LikeCount int32 `protobuf:"varint,6,opt,name=likeCount,proto3" json:"likeCount"` + Platform string `protobuf:"bytes,7,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,8,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + Replies []*YouTubeReply `protobuf:"bytes,9,rep,name=replies,proto3" json:"replies"` + UserName string `protobuf:"bytes,10,opt,name=userName,proto3" json:"userName"` +} + +func (x *YouTubeComment) Reset() { + *x = YouTubeComment{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[76] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *YouTubeComment) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*YouTubeComment) ProtoMessage() {} + +func (x *YouTubeComment) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[76] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use YouTubeComment.ProtoReflect.Descriptor instead. +func (*YouTubeComment) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{76} +} + +func (x *YouTubeComment) GetChannelUrl() string { + if x != nil { + return x.ChannelUrl + } + return "" +} + +func (x *YouTubeComment) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *YouTubeComment) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *YouTubeComment) GetCreated() string { + if x != nil { + return x.Created + } + return "" +} + +func (x *YouTubeComment) GetIsPublic() bool { + if x != nil { + return x.IsPublic + } + return false +} + +func (x *YouTubeComment) GetLikeCount() int32 { + if x != nil { + return x.LikeCount + } + return 0 +} + +func (x *YouTubeComment) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *YouTubeComment) GetProfileImageUrl() string { + if x != nil { + return x.ProfileImageUrl + } + return "" +} + +func (x *YouTubeComment) GetReplies() []*YouTubeReply { + if x != nil { + return x.Replies + } + return nil +} + +func (x *YouTubeComment) GetUserName() string { + if x != nil { + return x.UserName + } + return "" +} + +// 获取评论响应 +type GetCommentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Instagram []*InstagramComment `protobuf:"bytes,1,rep,name=instagram,proto3" json:"instagram"` + Tiktok []*TikTokComment `protobuf:"bytes,2,rep,name=tiktok,proto3" json:"tiktok"` + Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status"` + Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id"` + LastUpdated string `protobuf:"bytes,5,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,6,opt,name=nextUpdate,proto3" json:"nextUpdate"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,9,opt,name=message,proto3" json:"message"` + // 其它平台的评论列表 + Bluesky []*BlueskyComment `protobuf:"bytes,10,rep,name=bluesky,proto3" json:"bluesky"` + Facebook []*FacebookComment `protobuf:"bytes,11,rep,name=facebook,proto3" json:"facebook"` + Linkedin []*LinkedInComment `protobuf:"bytes,12,rep,name=linkedin,proto3" json:"linkedin"` + Reddit []*RedditComment `protobuf:"bytes,13,rep,name=reddit,proto3" json:"reddit"` + Threads []*ThreadsComment `protobuf:"bytes,14,rep,name=threads,proto3" json:"threads"` + Twitter []*TwitterComment `protobuf:"bytes,15,rep,name=twitter,proto3" json:"twitter"` + Youtube []*YouTubeComment `protobuf:"bytes,16,rep,name=youtube,proto3" json:"youtube"` +} + +func (x *GetCommentResponse) Reset() { + *x = GetCommentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[77] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetCommentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetCommentResponse) ProtoMessage() {} + +func (x *GetCommentResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[77] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetCommentResponse.ProtoReflect.Descriptor instead. +func (*GetCommentResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{77} +} + +func (x *GetCommentResponse) GetInstagram() []*InstagramComment { + if x != nil { + return x.Instagram + } + return nil +} + +func (x *GetCommentResponse) GetTiktok() []*TikTokComment { + if x != nil { + return x.Tiktok + } + return nil +} + +func (x *GetCommentResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GetCommentResponse) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GetCommentResponse) GetLastUpdated() string { + if x != nil { + return x.LastUpdated + } + return "" +} + +func (x *GetCommentResponse) GetNextUpdate() string { + if x != nil { + return x.NextUpdate + } + return "" +} + +func (x *GetCommentResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *GetCommentResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *GetCommentResponse) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +func (x *GetCommentResponse) GetBluesky() []*BlueskyComment { + if x != nil { + return x.Bluesky + } + return nil +} + +func (x *GetCommentResponse) GetFacebook() []*FacebookComment { + if x != nil { + return x.Facebook + } + return nil +} + +func (x *GetCommentResponse) GetLinkedin() []*LinkedInComment { + if x != nil { + return x.Linkedin + } + return nil +} + +func (x *GetCommentResponse) GetReddit() []*RedditComment { + if x != nil { + return x.Reddit + } + return nil +} + +func (x *GetCommentResponse) GetThreads() []*ThreadsComment { + if x != nil { + return x.Threads + } + return nil +} + +func (x *GetCommentResponse) GetTwitter() []*TwitterComment { + if x != nil { + return x.Twitter + } + return nil +} + +func (x *GetCommentResponse) GetYoutube() []*YouTubeComment { + if x != nil { + return x.Youtube + } + return nil +} + +// 删除评论请求 +type DeleteCommentRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Platforms []string `protobuf:"bytes,2,rep,name=platforms,proto3" json:"platforms"` + Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform"` + SearchPlatformId bool `protobuf:"varint,4,opt,name=searchPlatformId,proto3" json:"searchPlatformId"` + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *DeleteCommentRequest) Reset() { + *x = DeleteCommentRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[78] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteCommentRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteCommentRequest) ProtoMessage() {} + +func (x *DeleteCommentRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[78] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteCommentRequest.ProtoReflect.Descriptor instead. +func (*DeleteCommentRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{78} +} + +func (x *DeleteCommentRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *DeleteCommentRequest) GetPlatforms() []string { + if x != nil { + return x.Platforms + } + return nil +} + +func (x *DeleteCommentRequest) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *DeleteCommentRequest) GetSearchPlatformId() bool { + if x != nil { + return x.SearchPlatformId + } + return false +} + +func (x *DeleteCommentRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// Instagram 删除评论响应(单条) +type InstagramDeleteResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` +} + +func (x *InstagramDeleteResponse) Reset() { + *x = InstagramDeleteResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[79] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InstagramDeleteResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InstagramDeleteResponse) ProtoMessage() {} + +func (x *InstagramDeleteResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[79] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use InstagramDeleteResponse.ProtoReflect.Descriptor instead. +func (*InstagramDeleteResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{79} +} + +func (x *InstagramDeleteResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *InstagramDeleteResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *InstagramDeleteResponse) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *InstagramDeleteResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +// TikTok 删除评论响应(单条) +type TikTokDeleteResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId"` + Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id"` + Comment string `protobuf:"bytes,5,opt,name=comment,proto3" json:"comment"` +} + +func (x *TikTokDeleteResponse) Reset() { + *x = TikTokDeleteResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[80] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TikTokDeleteResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TikTokDeleteResponse) ProtoMessage() {} + +func (x *TikTokDeleteResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[80] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TikTokDeleteResponse.ProtoReflect.Descriptor instead. +func (*TikTokDeleteResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{80} +} + +func (x *TikTokDeleteResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *TikTokDeleteResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *TikTokDeleteResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *TikTokDeleteResponse) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *TikTokDeleteResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +// 删除评论响应 +type DeleteCommentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + // Instagram 和 TikTok 可能是单个对象或数组,使用 JSON 字符串存储 + Instagram string `protobuf:"bytes,2,opt,name=instagram,proto3" json:"instagram"` + Tiktok string `protobuf:"bytes,3,opt,name=tiktok,proto3" json:"tiktok"` + Action string `protobuf:"bytes,4,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,5,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,6,opt,name=message,proto3" json:"message"` + // 其它平台删除结果,同样使用 JSON 字符串存储,兼容单条或多条返回 + Bluesky string `protobuf:"bytes,7,opt,name=bluesky,proto3" json:"bluesky"` + Facebook string `protobuf:"bytes,8,opt,name=facebook,proto3" json:"facebook"` + Linkedin string `protobuf:"bytes,9,opt,name=linkedin,proto3" json:"linkedin"` + Threads string `protobuf:"bytes,10,opt,name=threads,proto3" json:"threads"` + Twitter string `protobuf:"bytes,11,opt,name=twitter,proto3" json:"twitter"` + Youtube string `protobuf:"bytes,12,opt,name=youtube,proto3" json:"youtube"` +} + +func (x *DeleteCommentResponse) Reset() { + *x = DeleteCommentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[81] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteCommentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteCommentResponse) ProtoMessage() {} + +func (x *DeleteCommentResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[81] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteCommentResponse.ProtoReflect.Descriptor instead. +func (*DeleteCommentResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{81} +} + +func (x *DeleteCommentResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *DeleteCommentResponse) GetInstagram() string { + if x != nil { + return x.Instagram + } + return "" +} + +func (x *DeleteCommentResponse) GetTiktok() string { + if x != nil { + return x.Tiktok + } + return "" +} + +func (x *DeleteCommentResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *DeleteCommentResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *DeleteCommentResponse) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +func (x *DeleteCommentResponse) GetBluesky() string { + if x != nil { + return x.Bluesky + } + return "" +} + +func (x *DeleteCommentResponse) GetFacebook() string { + if x != nil { + return x.Facebook + } + return "" +} + +func (x *DeleteCommentResponse) GetLinkedin() string { + if x != nil { + return x.Linkedin + } + return "" +} + +func (x *DeleteCommentResponse) GetThreads() string { + if x != nil { + return x.Threads + } + return "" +} + +func (x *DeleteCommentResponse) GetTwitter() string { + if x != nil { + return x.Twitter + } + return "" +} + +func (x *DeleteCommentResponse) GetYoutube() string { + if x != nil { + return x.Youtube + } + return "" +} + +// 回复评论请求 +type ReplyCommentRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment"` + Platforms []string `protobuf:"bytes,3,rep,name=platforms,proto3" json:"platforms"` + ProfileKey string `protobuf:"bytes,4,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *ReplyCommentRequest) Reset() { + *x = ReplyCommentRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[82] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ReplyCommentRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReplyCommentRequest) ProtoMessage() {} + +func (x *ReplyCommentRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[82] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReplyCommentRequest.ProtoReflect.Descriptor instead. +func (*ReplyCommentRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{82} +} + +func (x *ReplyCommentRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ReplyCommentRequest) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *ReplyCommentRequest) GetPlatforms() []string { + if x != nil { + return x.Platforms + } + return nil +} + +func (x *ReplyCommentRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// Instagram 回复评论响应 +type InstagramReplyResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` +} + +func (x *InstagramReplyResponse) Reset() { + *x = InstagramReplyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[83] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *InstagramReplyResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*InstagramReplyResponse) ProtoMessage() {} + +func (x *InstagramReplyResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[83] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use InstagramReplyResponse.ProtoReflect.Descriptor instead. +func (*InstagramReplyResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{83} +} + +func (x *InstagramReplyResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *InstagramReplyResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *InstagramReplyResponse) GetSourceCommentId() string { + if x != nil { + return x.SourceCommentId + } + return "" +} + +func (x *InstagramReplyResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *InstagramReplyResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +// TikTok 回复评论响应 +type TikTokReplyResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` + VideoId string `protobuf:"bytes,6,opt,name=videoId,proto3" json:"videoId"` +} + +func (x *TikTokReplyResponse) Reset() { + *x = TikTokReplyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[84] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TikTokReplyResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TikTokReplyResponse) ProtoMessage() {} + +func (x *TikTokReplyResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[84] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TikTokReplyResponse.ProtoReflect.Descriptor instead. +func (*TikTokReplyResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{84} +} + +func (x *TikTokReplyResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *TikTokReplyResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *TikTokReplyResponse) GetSourceCommentId() string { + if x != nil { + return x.SourceCommentId + } + return "" +} + +func (x *TikTokReplyResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *TikTokReplyResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *TikTokReplyResponse) GetVideoId() string { + if x != nil { + return x.VideoId + } + return "" +} + +// Bluesky 回复评论响应 +type BlueskyReplyResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` + Cid string `protobuf:"bytes,6,opt,name=cid,proto3" json:"cid"` + PostUrl string `protobuf:"bytes,7,opt,name=postUrl,proto3" json:"postUrl"` +} + +func (x *BlueskyReplyResponse) Reset() { + *x = BlueskyReplyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[85] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BlueskyReplyResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BlueskyReplyResponse) ProtoMessage() {} + +func (x *BlueskyReplyResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[85] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BlueskyReplyResponse.ProtoReflect.Descriptor instead. +func (*BlueskyReplyResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{85} +} + +func (x *BlueskyReplyResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *BlueskyReplyResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *BlueskyReplyResponse) GetSourceCommentId() string { + if x != nil { + return x.SourceCommentId + } + return "" +} + +func (x *BlueskyReplyResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *BlueskyReplyResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *BlueskyReplyResponse) GetCid() string { + if x != nil { + return x.Cid + } + return "" +} + +func (x *BlueskyReplyResponse) GetPostUrl() string { + if x != nil { + return x.PostUrl + } + return "" +} + +// Facebook 回复评论响应 +type FacebookReplyResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` +} + +func (x *FacebookReplyResponse) Reset() { + *x = FacebookReplyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[86] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *FacebookReplyResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*FacebookReplyResponse) ProtoMessage() {} + +func (x *FacebookReplyResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[86] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use FacebookReplyResponse.ProtoReflect.Descriptor instead. +func (*FacebookReplyResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{86} +} + +func (x *FacebookReplyResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *FacebookReplyResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *FacebookReplyResponse) GetSourceCommentId() string { + if x != nil { + return x.SourceCommentId + } + return "" +} + +func (x *FacebookReplyResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *FacebookReplyResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +// LinkedIn 回复评论响应 +type LinkedInReplyResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` +} + +func (x *LinkedInReplyResponse) Reset() { + *x = LinkedInReplyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[87] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *LinkedInReplyResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*LinkedInReplyResponse) ProtoMessage() {} + +func (x *LinkedInReplyResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[87] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use LinkedInReplyResponse.ProtoReflect.Descriptor instead. +func (*LinkedInReplyResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{87} +} + +func (x *LinkedInReplyResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *LinkedInReplyResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *LinkedInReplyResponse) GetSourceCommentId() string { + if x != nil { + return x.SourceCommentId + } + return "" +} + +func (x *LinkedInReplyResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *LinkedInReplyResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +// Twitter/X 回复评论响应 +type TwitterReplyResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` + PostUrl string `protobuf:"bytes,6,opt,name=postUrl,proto3" json:"postUrl"` +} + +func (x *TwitterReplyResponse) Reset() { + *x = TwitterReplyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[88] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TwitterReplyResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TwitterReplyResponse) ProtoMessage() {} + +func (x *TwitterReplyResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[88] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TwitterReplyResponse.ProtoReflect.Descriptor instead. +func (*TwitterReplyResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{88} +} + +func (x *TwitterReplyResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *TwitterReplyResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *TwitterReplyResponse) GetSourceCommentId() string { + if x != nil { + return x.SourceCommentId + } + return "" +} + +func (x *TwitterReplyResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *TwitterReplyResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +func (x *TwitterReplyResponse) GetPostUrl() string { + if x != nil { + return x.PostUrl + } + return "" +} + +// YouTube 回复评论响应 +type YouTubeReplyResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` +} + +func (x *YouTubeReplyResponse) Reset() { + *x = YouTubeReplyResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[89] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *YouTubeReplyResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*YouTubeReplyResponse) ProtoMessage() {} + +func (x *YouTubeReplyResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[89] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use YouTubeReplyResponse.ProtoReflect.Descriptor instead. +func (*YouTubeReplyResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{89} +} + +func (x *YouTubeReplyResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *YouTubeReplyResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *YouTubeReplyResponse) GetSourceCommentId() string { + if x != nil { + return x.SourceCommentId + } + return "" +} + +func (x *YouTubeReplyResponse) GetComment() string { + if x != nil { + return x.Comment + } + return "" +} + +func (x *YouTubeReplyResponse) GetPlatform() string { + if x != nil { + return x.Platform + } + return "" +} + +// 回复评论响应 +type ReplyCommentResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` + Instagram *InstagramReplyResponse `protobuf:"bytes,4,opt,name=instagram,proto3" json:"instagram"` + Tiktok *TikTokReplyResponse `protobuf:"bytes,5,opt,name=tiktok,proto3" json:"tiktok"` + Action string `protobuf:"bytes,6,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,7,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,8,opt,name=message,proto3" json:"message"` + // 其它平台的回复结果 + Bluesky *BlueskyReplyResponse `protobuf:"bytes,9,opt,name=bluesky,proto3" json:"bluesky"` + Facebook *FacebookReplyResponse `protobuf:"bytes,10,opt,name=facebook,proto3" json:"facebook"` + Linkedin *LinkedInReplyResponse `protobuf:"bytes,11,opt,name=linkedin,proto3" json:"linkedin"` + Twitter *TwitterReplyResponse `protobuf:"bytes,12,opt,name=twitter,proto3" json:"twitter"` + Youtube *YouTubeReplyResponse `protobuf:"bytes,13,opt,name=youtube,proto3" json:"youtube"` +} + +func (x *ReplyCommentResponse) Reset() { + *x = ReplyCommentResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[90] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ReplyCommentResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReplyCommentResponse) ProtoMessage() {} + +func (x *ReplyCommentResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[90] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReplyCommentResponse.ProtoReflect.Descriptor instead. +func (*ReplyCommentResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{90} +} + +func (x *ReplyCommentResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *ReplyCommentResponse) GetCommentId() string { + if x != nil { + return x.CommentId + } + return "" +} + +func (x *ReplyCommentResponse) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *ReplyCommentResponse) GetInstagram() *InstagramReplyResponse { + if x != nil { + return x.Instagram + } + return nil +} + +func (x *ReplyCommentResponse) GetTiktok() *TikTokReplyResponse { + if x != nil { + return x.Tiktok + } + return nil +} + +func (x *ReplyCommentResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *ReplyCommentResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *ReplyCommentResponse) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +func (x *ReplyCommentResponse) GetBluesky() *BlueskyReplyResponse { + if x != nil { + return x.Bluesky + } + return nil +} + +func (x *ReplyCommentResponse) GetFacebook() *FacebookReplyResponse { + if x != nil { + return x.Facebook + } + return nil +} + +func (x *ReplyCommentResponse) GetLinkedin() *LinkedInReplyResponse { + if x != nil { + return x.Linkedin + } + return nil +} + +func (x *ReplyCommentResponse) GetTwitter() *TwitterReplyResponse { + if x != nil { + return x.Twitter + } + return nil +} + +func (x *ReplyCommentResponse) GetYoutube() *YouTubeReplyResponse { + if x != nil { + return x.Youtube + } + return nil +} + +// 获取帖子分析数据请求 +type GetPostAnalyticsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Platforms []string `protobuf:"bytes,2,rep,name=platforms,proto3" json:"platforms"` + ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *GetPostAnalyticsRequest) Reset() { + *x = GetPostAnalyticsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[91] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetPostAnalyticsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetPostAnalyticsRequest) ProtoMessage() {} + +func (x *GetPostAnalyticsRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[91] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetPostAnalyticsRequest.ProtoReflect.Descriptor instead. +func (*GetPostAnalyticsRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{91} +} + +func (x *GetPostAnalyticsRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GetPostAnalyticsRequest) GetPlatforms() []string { + if x != nil { + return x.Platforms + } + return nil +} + +func (x *GetPostAnalyticsRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// 通过 Social Post ID 获取帖子分析数据请求 +type GetPostAnalyticsBySocialIDRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Platforms []string `protobuf:"bytes,2,rep,name=platforms,proto3" json:"platforms"` + SearchPlatformId bool `protobuf:"varint,3,opt,name=searchPlatformId,proto3" json:"searchPlatformId"` + ProfileKey string `protobuf:"bytes,4,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *GetPostAnalyticsBySocialIDRequest) Reset() { + *x = GetPostAnalyticsBySocialIDRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[92] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetPostAnalyticsBySocialIDRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetPostAnalyticsBySocialIDRequest) ProtoMessage() {} + +func (x *GetPostAnalyticsBySocialIDRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[92] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetPostAnalyticsBySocialIDRequest.ProtoReflect.Descriptor instead. +func (*GetPostAnalyticsBySocialIDRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{92} +} + +func (x *GetPostAnalyticsBySocialIDRequest) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GetPostAnalyticsBySocialIDRequest) GetPlatforms() []string { + if x != nil { + return x.Platforms + } + return nil +} + +func (x *GetPostAnalyticsBySocialIDRequest) GetSearchPlatformId() bool { + if x != nil { + return x.SearchPlatformId + } + return false +} + +func (x *GetPostAnalyticsBySocialIDRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// 获取帖子分析数据响应(使用 JSON 字符串存储复杂的平台数据) +type GetPostAnalyticsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` + // 各平台的分析数据以 JSON 字符串形式存储 + Bluesky string `protobuf:"bytes,4,opt,name=bluesky,proto3" json:"bluesky"` + Facebook string `protobuf:"bytes,5,opt,name=facebook,proto3" json:"facebook"` + Instagram string `protobuf:"bytes,6,opt,name=instagram,proto3" json:"instagram"` + Linkedin string `protobuf:"bytes,7,opt,name=linkedin,proto3" json:"linkedin"` + Pinterest string `protobuf:"bytes,8,opt,name=pinterest,proto3" json:"pinterest"` + Snapchat string `protobuf:"bytes,9,opt,name=snapchat,proto3" json:"snapchat"` + Threads string `protobuf:"bytes,10,opt,name=threads,proto3" json:"threads"` + Tiktok string `protobuf:"bytes,11,opt,name=tiktok,proto3" json:"tiktok"` + Twitter string `protobuf:"bytes,12,opt,name=twitter,proto3" json:"twitter"` + Youtube string `protobuf:"bytes,13,opt,name=youtube,proto3" json:"youtube"` +} + +func (x *GetPostAnalyticsResponse) Reset() { + *x = GetPostAnalyticsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[93] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetPostAnalyticsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetPostAnalyticsResponse) ProtoMessage() {} + +func (x *GetPostAnalyticsResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[93] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetPostAnalyticsResponse.ProtoReflect.Descriptor instead. +func (*GetPostAnalyticsResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{93} +} + +func (x *GetPostAnalyticsResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GetPostAnalyticsResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *GetPostAnalyticsResponse) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *GetPostAnalyticsResponse) GetBluesky() string { + if x != nil { + return x.Bluesky + } + return "" +} + +func (x *GetPostAnalyticsResponse) GetFacebook() string { + if x != nil { + return x.Facebook + } + return "" +} + +func (x *GetPostAnalyticsResponse) GetInstagram() string { + if x != nil { + return x.Instagram + } + return "" +} + +func (x *GetPostAnalyticsResponse) GetLinkedin() string { + if x != nil { + return x.Linkedin + } + return "" +} + +func (x *GetPostAnalyticsResponse) GetPinterest() string { + if x != nil { + return x.Pinterest + } + return "" +} + +func (x *GetPostAnalyticsResponse) GetSnapchat() string { + if x != nil { + return x.Snapchat + } + return "" +} + +func (x *GetPostAnalyticsResponse) GetThreads() string { + if x != nil { + return x.Threads + } + return "" +} + +func (x *GetPostAnalyticsResponse) GetTiktok() string { + if x != nil { + return x.Tiktok + } + return "" +} + +func (x *GetPostAnalyticsResponse) GetTwitter() string { + if x != nil { + return x.Twitter + } + return "" +} + +func (x *GetPostAnalyticsResponse) GetYoutube() string { + if x != nil { + return x.Youtube + } + return "" +} + +// 获取社交网络分析数据请求 +type GetSocialAnalyticsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Platforms []string `protobuf:"bytes,1,rep,name=platforms,proto3" json:"platforms"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *GetSocialAnalyticsRequest) Reset() { + *x = GetSocialAnalyticsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[94] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetSocialAnalyticsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetSocialAnalyticsRequest) ProtoMessage() {} + +func (x *GetSocialAnalyticsRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[94] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetSocialAnalyticsRequest.ProtoReflect.Descriptor instead. +func (*GetSocialAnalyticsRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{94} +} + +func (x *GetSocialAnalyticsRequest) GetPlatforms() []string { + if x != nil { + return x.Platforms + } + return nil +} + +func (x *GetSocialAnalyticsRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// 获取社交网络分析数据响应(使用 JSON 字符串存储复杂的平台数据) +type GetSocialAnalyticsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + // 各平台的分析数据以 JSON 字符串形式存储 + Bluesky string `protobuf:"bytes,2,opt,name=bluesky,proto3" json:"bluesky"` + Facebook string `protobuf:"bytes,3,opt,name=facebook,proto3" json:"facebook"` + Gmb string `protobuf:"bytes,4,opt,name=gmb,proto3" json:"gmb"` + Instagram string `protobuf:"bytes,5,opt,name=instagram,proto3" json:"instagram"` + Linkedin string `protobuf:"bytes,6,opt,name=linkedin,proto3" json:"linkedin"` + Pinterest string `protobuf:"bytes,7,opt,name=pinterest,proto3" json:"pinterest"` + Reddit string `protobuf:"bytes,8,opt,name=reddit,proto3" json:"reddit"` + Snapchat string `protobuf:"bytes,9,opt,name=snapchat,proto3" json:"snapchat"` + Threads string `protobuf:"bytes,10,opt,name=threads,proto3" json:"threads"` + Tiktok string `protobuf:"bytes,11,opt,name=tiktok,proto3" json:"tiktok"` + Twitter string `protobuf:"bytes,12,opt,name=twitter,proto3" json:"twitter"` + Youtube string `protobuf:"bytes,13,opt,name=youtube,proto3" json:"youtube"` +} + +func (x *GetSocialAnalyticsResponse) Reset() { + *x = GetSocialAnalyticsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[95] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetSocialAnalyticsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetSocialAnalyticsResponse) ProtoMessage() {} + +func (x *GetSocialAnalyticsResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[95] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetSocialAnalyticsResponse.ProtoReflect.Descriptor instead. +func (*GetSocialAnalyticsResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{95} +} + +func (x *GetSocialAnalyticsResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetBluesky() string { + if x != nil { + return x.Bluesky + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetFacebook() string { + if x != nil { + return x.Facebook + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetGmb() string { + if x != nil { + return x.Gmb + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetInstagram() string { + if x != nil { + return x.Instagram + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetLinkedin() string { + if x != nil { + return x.Linkedin + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetPinterest() string { + if x != nil { + return x.Pinterest + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetReddit() string { + if x != nil { + return x.Reddit + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetSnapchat() string { + if x != nil { + return x.Snapchat + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetThreads() string { + if x != nil { + return x.Threads + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetTiktok() string { + if x != nil { + return x.Tiktok + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetTwitter() string { + if x != nil { + return x.Twitter + } + return "" +} + +func (x *GetSocialAnalyticsResponse) GetYoutube() string { + if x != nil { + return x.Youtube + } + return "" +} + +// AutoHashtagsRequest 自动生成标签请求参数 +type AutoHashtagsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Post string `protobuf:"bytes,1,opt,name=post,proto3" json:"post"` + Max int32 `protobuf:"varint,2,opt,name=max,proto3" json:"max"` + Position string `protobuf:"bytes,3,opt,name=position,proto3" json:"position"` + Language string `protobuf:"bytes,4,opt,name=language,proto3" json:"language"` + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *AutoHashtagsRequest) Reset() { + *x = AutoHashtagsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[96] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AutoHashtagsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AutoHashtagsRequest) ProtoMessage() {} + +func (x *AutoHashtagsRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[96] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AutoHashtagsRequest.ProtoReflect.Descriptor instead. +func (*AutoHashtagsRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{96} +} + +func (x *AutoHashtagsRequest) GetPost() string { + if x != nil { + return x.Post + } + return "" +} + +func (x *AutoHashtagsRequest) GetMax() int32 { + if x != nil { + return x.Max + } + return 0 +} + +func (x *AutoHashtagsRequest) GetPosition() string { + if x != nil { + return x.Position + } + return "" +} + +func (x *AutoHashtagsRequest) GetLanguage() string { + if x != nil { + return x.Language + } + return "" +} + +func (x *AutoHashtagsRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// AutoHashtagsResponse 自动生成标签返回结果 +type AutoHashtagsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Post string `protobuf:"bytes,1,opt,name=post,proto3" json:"post"` + Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status"` + Code int32 `protobuf:"varint,4,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,5,opt,name=message,proto3" json:"message"` +} + +func (x *AutoHashtagsResponse) Reset() { + *x = AutoHashtagsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[97] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AutoHashtagsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AutoHashtagsResponse) ProtoMessage() {} + +func (x *AutoHashtagsResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[97] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use AutoHashtagsResponse.ProtoReflect.Descriptor instead. +func (*AutoHashtagsResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{97} +} + +func (x *AutoHashtagsResponse) GetPost() string { + if x != nil { + return x.Post + } + return "" +} + +func (x *AutoHashtagsResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *AutoHashtagsResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *AutoHashtagsResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *AutoHashtagsResponse) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +// CheckBannedHashtagRequest 查看被禁用标签请求 +type CheckBannedHashtagRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Hashtag string `protobuf:"bytes,1,opt,name=hashtag,proto3" json:"hashtag"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *CheckBannedHashtagRequest) Reset() { + *x = CheckBannedHashtagRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[98] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CheckBannedHashtagRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CheckBannedHashtagRequest) ProtoMessage() {} + +func (x *CheckBannedHashtagRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[98] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CheckBannedHashtagRequest.ProtoReflect.Descriptor instead. +func (*CheckBannedHashtagRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{98} +} + +func (x *CheckBannedHashtagRequest) GetHashtag() string { + if x != nil { + return x.Hashtag + } + return "" +} + +func (x *CheckBannedHashtagRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// CheckBannedHashtagResponse 查看被禁用标签返回结果 +type CheckBannedHashtagResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Hashtag string `protobuf:"bytes,1,opt,name=hashtag,proto3" json:"hashtag"` + Banned bool `protobuf:"varint,2,opt,name=banned,proto3" json:"banned"` + Action string `protobuf:"bytes,3,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,4,opt,name=status,proto3" json:"status"` + Code int32 `protobuf:"varint,5,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,6,opt,name=message,proto3" json:"message"` +} + +func (x *CheckBannedHashtagResponse) Reset() { + *x = CheckBannedHashtagResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[99] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CheckBannedHashtagResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CheckBannedHashtagResponse) ProtoMessage() {} + +func (x *CheckBannedHashtagResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[99] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use CheckBannedHashtagResponse.ProtoReflect.Descriptor instead. +func (*CheckBannedHashtagResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{99} +} + +func (x *CheckBannedHashtagResponse) GetHashtag() string { + if x != nil { + return x.Hashtag + } + return "" +} + +func (x *CheckBannedHashtagResponse) GetBanned() bool { + if x != nil { + return x.Banned + } + return false +} + +func (x *CheckBannedHashtagResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *CheckBannedHashtagResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *CheckBannedHashtagResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *CheckBannedHashtagResponse) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +// HashtagRecommendation 单条推荐标签信息 +type HashtagRecommendation struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ViewCount int64 `protobuf:"varint,1,opt,name=viewCount,proto3" json:"viewCount"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name"` +} + +func (x *HashtagRecommendation) Reset() { + *x = HashtagRecommendation{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[100] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *HashtagRecommendation) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*HashtagRecommendation) ProtoMessage() {} + +func (x *HashtagRecommendation) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[100] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use HashtagRecommendation.ProtoReflect.Descriptor instead. +func (*HashtagRecommendation) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{100} +} + +func (x *HashtagRecommendation) GetViewCount() int64 { + if x != nil { + return x.ViewCount + } + return 0 +} + +func (x *HashtagRecommendation) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +// RecommendHashtagsRequest 推荐话题标签请求 +type RecommendHashtagsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Keyword string `protobuf:"bytes,1,opt,name=keyword,proto3" json:"keyword"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *RecommendHashtagsRequest) Reset() { + *x = RecommendHashtagsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[101] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RecommendHashtagsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RecommendHashtagsRequest) ProtoMessage() {} + +func (x *RecommendHashtagsRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[101] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RecommendHashtagsRequest.ProtoReflect.Descriptor instead. +func (*RecommendHashtagsRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{101} +} + +func (x *RecommendHashtagsRequest) GetKeyword() string { + if x != nil { + return x.Keyword + } + return "" +} + +func (x *RecommendHashtagsRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// RecommendHashtagsResponse 推荐话题标签返回结果 +type RecommendHashtagsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Keyword string `protobuf:"bytes,1,opt,name=keyword,proto3" json:"keyword"` + Recommendations []*HashtagRecommendation `protobuf:"bytes,2,rep,name=recommendations,proto3" json:"recommendations"` + Action string `protobuf:"bytes,3,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,4,opt,name=status,proto3" json:"status"` + Code int32 `protobuf:"varint,5,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,6,opt,name=message,proto3" json:"message"` +} + +func (x *RecommendHashtagsResponse) Reset() { + *x = RecommendHashtagsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[102] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *RecommendHashtagsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*RecommendHashtagsResponse) ProtoMessage() {} + +func (x *RecommendHashtagsResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[102] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use RecommendHashtagsResponse.ProtoReflect.Descriptor instead. +func (*RecommendHashtagsResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{102} +} + +func (x *RecommendHashtagsResponse) GetKeyword() string { + if x != nil { + return x.Keyword + } + return "" +} + +func (x *RecommendHashtagsResponse) GetRecommendations() []*HashtagRecommendation { + if x != nil { + return x.Recommendations + } + return nil +} + +func (x *RecommendHashtagsResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *RecommendHashtagsResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *RecommendHashtagsResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *RecommendHashtagsResponse) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + +// SearchHashtagsRequest 搜索话题标签请求 +type SearchHashtagsRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Keyword string `protobuf:"bytes,1,opt,name=keyword,proto3" json:"keyword"` + SearchType string `protobuf:"bytes,2,opt,name=searchType,proto3" json:"searchType"` + ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` +} + +func (x *SearchHashtagsRequest) Reset() { + *x = SearchHashtagsRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[103] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SearchHashtagsRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SearchHashtagsRequest) ProtoMessage() {} + +func (x *SearchHashtagsRequest) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[103] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SearchHashtagsRequest.ProtoReflect.Descriptor instead. +func (*SearchHashtagsRequest) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{103} +} + +func (x *SearchHashtagsRequest) GetKeyword() string { + if x != nil { + return x.Keyword + } + return "" +} + +func (x *SearchHashtagsRequest) GetSearchType() string { + if x != nil { + return x.SearchType + } + return "" +} + +func (x *SearchHashtagsRequest) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +// SearchHashtagInfo 单个话题标签的基本信息 +type SearchHashtagInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name"` +} + +func (x *SearchHashtagInfo) Reset() { + *x = SearchHashtagInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[104] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SearchHashtagInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SearchHashtagInfo) ProtoMessage() {} + +func (x *SearchHashtagInfo) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[104] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SearchHashtagInfo.ProtoReflect.Descriptor instead. +func (*SearchHashtagInfo) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{104} +} + +func (x *SearchHashtagInfo) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *SearchHashtagInfo) GetName() string { + if x != nil { + return x.Name + } + return "" +} + +// SearchHashtagChild 搜索结果中 children.data 的元素 +type SearchHashtagChild struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` +} + +func (x *SearchHashtagChild) Reset() { + *x = SearchHashtagChild{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[105] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SearchHashtagChild) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SearchHashtagChild) ProtoMessage() {} + +func (x *SearchHashtagChild) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[105] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SearchHashtagChild.ProtoReflect.Descriptor instead. +func (*SearchHashtagChild) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{105} +} + +func (x *SearchHashtagChild) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +// SearchHashtagChildren 搜索结果中的 children 对象 +type SearchHashtagChildren struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*SearchHashtagChild `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` +} + +func (x *SearchHashtagChildren) Reset() { + *x = SearchHashtagChildren{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[106] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SearchHashtagChildren) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SearchHashtagChildren) ProtoMessage() {} + +func (x *SearchHashtagChildren) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[106] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SearchHashtagChildren.ProtoReflect.Descriptor instead. +func (*SearchHashtagChildren) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{106} +} + +func (x *SearchHashtagChildren) GetData() []*SearchHashtagChild { + if x != nil { + return x.Data + } + return nil +} + +// SearchHashtagMedia 搜索结果中的单条 Instagram 媒体信息 +type SearchHashtagMedia struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Caption string `protobuf:"bytes,1,opt,name=caption,proto3" json:"caption"` + Children *SearchHashtagChildren `protobuf:"bytes,2,opt,name=children,proto3" json:"children"` + CommentsCount int32 `protobuf:"varint,3,opt,name=commentsCount,proto3" json:"commentsCount"` + Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id"` + LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount"` + MediaType string `protobuf:"bytes,6,opt,name=mediaType,proto3" json:"mediaType"` + MediaUrl string `protobuf:"bytes,7,opt,name=mediaUrl,proto3" json:"mediaUrl"` + Permalink string `protobuf:"bytes,8,opt,name=permalink,proto3" json:"permalink"` + Timestamp string `protobuf:"bytes,9,opt,name=timestamp,proto3" json:"timestamp"` +} + +func (x *SearchHashtagMedia) Reset() { + *x = SearchHashtagMedia{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[107] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SearchHashtagMedia) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SearchHashtagMedia) ProtoMessage() {} + +func (x *SearchHashtagMedia) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[107] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SearchHashtagMedia.ProtoReflect.Descriptor instead. +func (*SearchHashtagMedia) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{107} +} + +func (x *SearchHashtagMedia) GetCaption() string { + if x != nil { + return x.Caption + } + return "" +} + +func (x *SearchHashtagMedia) GetChildren() *SearchHashtagChildren { + if x != nil { + return x.Children + } + return nil +} + +func (x *SearchHashtagMedia) GetCommentsCount() int32 { + if x != nil { + return x.CommentsCount + } + return 0 +} + +func (x *SearchHashtagMedia) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +func (x *SearchHashtagMedia) GetLikeCount() int32 { + if x != nil { + return x.LikeCount + } + return 0 +} + +func (x *SearchHashtagMedia) GetMediaType() string { + if x != nil { + return x.MediaType + } + return "" +} + +func (x *SearchHashtagMedia) GetMediaUrl() string { + if x != nil { + return x.MediaUrl + } + return "" +} + +func (x *SearchHashtagMedia) GetPermalink() string { + if x != nil { + return x.Permalink + } + return "" +} + +func (x *SearchHashtagMedia) GetTimestamp() string { + if x != nil { + return x.Timestamp + } + return "" +} + +// SearchHashtagsResponse 搜索话题标签响应 +type SearchHashtagsResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Hashtag *SearchHashtagInfo `protobuf:"bytes,2,opt,name=hashtag,proto3" json:"hashtag"` + SearchResults []*SearchHashtagMedia `protobuf:"bytes,3,rep,name=searchResults,proto3" json:"searchResults"` + Count int32 `protobuf:"varint,4,opt,name=count,proto3" json:"count"` + LastUpdated string `protobuf:"bytes,5,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,6,opt,name=nextUpdate,proto3" json:"nextUpdate"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,9,opt,name=message,proto3" json:"message"` +} + +func (x *SearchHashtagsResponse) Reset() { + *x = SearchHashtagsResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_ayrshare_proto_msgTypes[108] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SearchHashtagsResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SearchHashtagsResponse) ProtoMessage() {} + +func (x *SearchHashtagsResponse) ProtoReflect() protoreflect.Message { + mi := &file_pb_ayrshare_proto_msgTypes[108] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SearchHashtagsResponse.ProtoReflect.Descriptor instead. +func (*SearchHashtagsResponse) Descriptor() ([]byte, []int) { + return file_pb_ayrshare_proto_rawDescGZIP(), []int{108} +} + +func (x *SearchHashtagsResponse) GetStatus() string { + if x != nil { + return x.Status + } + return "" +} + +func (x *SearchHashtagsResponse) GetHashtag() *SearchHashtagInfo { + if x != nil { + return x.Hashtag + } + return nil +} + +func (x *SearchHashtagsResponse) GetSearchResults() []*SearchHashtagMedia { + if x != nil { + return x.SearchResults + } + return nil +} + +func (x *SearchHashtagsResponse) GetCount() int32 { + if x != nil { + return x.Count + } + return 0 +} + +func (x *SearchHashtagsResponse) GetLastUpdated() string { + if x != nil { + return x.LastUpdated + } + return "" +} + +func (x *SearchHashtagsResponse) GetNextUpdate() string { + if x != nil { + return x.NextUpdate + } + return "" +} + +func (x *SearchHashtagsResponse) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *SearchHashtagsResponse) GetCode() int32 { + if x != nil { + return x.Code + } + return 0 +} + +func (x *SearchHashtagsResponse) GetMessage() string { + if x != nil { + return x.Message + } + return "" +} + var File_pb_ayrshare_proto protoreflect.FileDescriptor var file_pb_ayrshare_proto_rawDesc = []byte{ @@ -2500,14 +10451,44 @@ var file_pb_ayrshare_proto_rawDesc = []byte{ 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x4e, 0x61, 0x69, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x22, - 0x89, 0x04, 0x0a, 0x0b, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x32, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe2, - 0xdf, 0x1f, 0x1a, 0x2a, 0x16, 0x70, 0x6f, 0x73, 0x74, 0xe5, 0x86, 0x85, 0xe5, 0xae, 0xb9, 0xe4, - 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x04, 0x70, - 0x6f, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x29, 0xe2, 0xdf, 0x1f, 0x25, 0x2a, 0x21, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, - 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x60, + 0xa4, 0x02, 0x0a, 0x0e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, + 0x69, 0x76, 0x61, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x69, + 0x76, 0x61, 0x63, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x74, 0x65, + 0x67, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, + 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x64, 0x65, + 0x46, 0x6f, 0x72, 0x4b, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6d, + 0x61, 0x64, 0x65, 0x46, 0x6f, 0x72, 0x4b, 0x69, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x68, + 0x75, 0x6d, 0x62, 0x4e, 0x61, 0x69, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, + 0x68, 0x75, 0x6d, 0x62, 0x4e, 0x61, 0x69, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x79, + 0x6c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, + 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x6e, 0x6f, 0x74, 0x69, + 0x66, 0x79, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x11, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x53, 0x75, 0x62, 0x73, 0x63, + 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x22, 0xb4, 0x01, 0x0a, 0x0e, 0x42, 0x6c, 0x75, 0x65, 0x73, + 0x6b, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x61, 0x62, + 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x05, 0x6c, 0x61, 0x6e, 0x67, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x71, 0x75, 0x6f, 0x74, 0x65, + 0x64, 0x50, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x71, 0x75, 0x6f, 0x74, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x69, 0x12, 0x26, 0x0a, + 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x50, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x69, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x50, 0x6f, + 0x73, 0x74, 0x55, 0x72, 0x69, 0x12, 0x26, 0x0a, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, + 0x50, 0x6f, 0x73, 0x74, 0x43, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, + 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x69, 0x64, 0x22, 0x8f, 0x05, + 0x0a, 0x0b, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, + 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe2, 0xdf, 0x1f, + 0x1a, 0x2a, 0x16, 0x70, 0x6f, 0x73, 0x74, 0xe5, 0x86, 0x85, 0xe5, 0xae, 0xb9, 0xe4, 0xb8, 0x8d, + 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x04, 0x70, 0x6f, 0x73, + 0x74, 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, + 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, @@ -2532,350 +10513,1652 @@ var file_pb_ayrshare_proto_rawDesc = []byte{ 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0d, 0x74, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xa4, 0x02, 0x0a, 0x06, - 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, - 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, - 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, - 0x6e, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, - 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6e, - 0x64, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x64, 0x65, 0x64, - 0x12, 0x18, 0x0a, 0x07, 0x69, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x69, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, - 0x56, 0x69, 0x64, 0x65, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x56, - 0x69, 0x64, 0x65, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, 0x74, - 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, - 0x74, 0x61, 0x22, 0xe0, 0x01, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, - 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, - 0x2a, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, - 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x72, - 0x65, 0x66, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, - 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, - 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, - 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x69, 0x6b, - 0x54, 0x6f, 0x6b, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69, 0x6b, - 0x54, 0x6f, 0x6b, 0x49, 0x64, 0x22, 0xc3, 0x01, 0x0a, 0x0c, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x28, - 0x0a, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x74, 0x65, - 0x6d, 0x52, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, - 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, - 0x12, 0x2a, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x10, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, - 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, 0x0e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0b, - 0x69, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x22, 0x5e, 0x0a, 0x0e, 0x47, - 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, - 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1c, 0xe2, 0xdf, 0x1f, 0x18, 0x2a, - 0x14, 0xe5, 0xb8, 0x96, 0xe5, 0xad, 0x90, 0x49, 0x44, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, - 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xfd, 0x02, 0x0a, 0x0f, - 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, - 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, - 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x18, 0x04, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x12, - 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x12, 0x0a, - 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, - 0x74, 0x12, 0x2a, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, - 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, 0x22, 0x0a, - 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, - 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, - 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, - 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, - 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x5c, 0x0a, 0x0e, 0x47, - 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, - 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x2a, 0x0a, - 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, - 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x5b, 0x0a, 0x09, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x19, 0x0a, 0x07, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x73, 0x12, 0x21, 0x0a, 0x0b, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x5f, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x74, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x75, 0x74, 0x63, 0x22, 0x7a, 0x0a, 0x0c, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, - 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, - 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x6d, 0x6f, - 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x6f, - 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x22, - 0x0a, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x65, 0x74, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x52, 0x65, 0x73, - 0x65, 0x74, 0x22, 0xb5, 0x06, 0x0a, 0x0b, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, - 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, - 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, - 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x70, 0x73, 0x55, 0x72, 0x6c, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x73, 0x55, 0x72, 0x6c, 0x12, 0x18, - 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x49, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x76, 0x69, - 0x65, 0x77, 0x55, 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x76, - 0x69, 0x65, 0x77, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x67, 0x49, 0x64, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x67, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, - 0x0a, 0x09, 0x75, 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x11, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x75, 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x32, 0x0a, 0x14, - 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x44, 0x61, 0x79, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, - 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x72, 0x65, 0x66, 0x72, - 0x65, 0x73, 0x68, 0x44, 0x61, 0x79, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, - 0x12, 0x28, 0x0a, 0x0f, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x69, - 0x72, 0x65, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x66, 0x72, 0x65, - 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x42, 0x0a, 0x1c, 0x69, 0x73, - 0x45, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x47, 0x65, 0x6f, 0x52, 0x65, - 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x1c, 0x69, 0x73, 0x45, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x47, - 0x65, 0x6f, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, - 0x0a, 0x0a, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x15, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x2a, - 0x0a, 0x10, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, - 0x70, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x74, 0x77, - 0x69, 0x74, 0x74, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, - 0x74, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0c, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, - 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, - 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x76, 0x65, - 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x85, 0x05, 0x0a, 0x0f, 0x47, - 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, - 0x0a, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x14, 0x61, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x12, 0x39, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x2e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0c, - 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, - 0x69, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, - 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x41, 0x70, 0x69, - 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x4c, 0x0a, 0x21, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, - 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x6e, - 0x74, 0x68, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x21, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x45, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x28, - 0x0a, 0x0f, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, - 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, - 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x6f, 0x6e, 0x74, - 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x10, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, - 0x6f, 0x73, 0x74, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, - 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x51, 0x75, 0x6f, 0x74, 0x61, - 0x12, 0x32, 0x0a, 0x14, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, 0x43, 0x61, - 0x6c, 0x6c, 0x73, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, - 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x51, - 0x75, 0x6f, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, - 0x74, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, - 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, - 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x22, 0xb7, 0x02, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x05, 0x74, - 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, 0xe2, 0xdf, 0x1f, 0x15, - 0x2a, 0x11, 0x74, 0x69, 0x74, 0x6c, 0x65, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, - 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x0f, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, - 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x68, 0x69, 0x64, 0x65, 0x54, 0x6f, - 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, - 0x69, 0x64, 0x65, 0x54, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, - 0x74, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x74, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, - 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, - 0x74, 0x65, 0x61, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x75, - 0x62, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, - 0x75, 0x62, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, - 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0xa5, 0x01, 0x0a, - 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, - 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, - 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x05, 0x20, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x40, 0x0a, 0x0e, 0x79, + 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x59, + 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0e, 0x79, + 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x40, 0x0a, + 0x0e, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, + 0x0e, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, + 0xa4, 0x02, 0x0a, 0x06, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x63, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x1a, + 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, + 0x77, 0x6e, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x12, 0x14, + 0x0a, 0x05, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, + 0x6e, 0x64, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x64, + 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x73, 0x65, + 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x22, 0xe0, 0x01, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x74, 0x49, + 0x74, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, + 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, + 0x6f, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, + 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x1a, 0x0a, + 0x08, 0x74, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x74, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x49, 0x64, 0x22, 0xc3, 0x01, 0x0a, 0x0c, 0x50, 0x6f, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x28, 0x0a, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x12, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, + 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, + 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, + 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x1d, 0x0a, 0x0b, 0x69, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x22, + 0x5e, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x2c, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1c, 0xe2, + 0xdf, 0x1f, 0x18, 0x2a, 0x14, 0xe5, 0xb8, 0x96, 0xe5, 0xad, 0x90, 0x49, 0x44, 0xe4, 0xb8, 0x8d, + 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, + 0xfd, 0x02, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, + 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, + 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, + 0x72, 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, + 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, + 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, + 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, + 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x12, + 0x22, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, + 0x6e, 0x6b, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, + 0x5c, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x12, 0x2a, 0x0a, 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x5b, 0x0a, + 0x09, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x19, 0x0a, 0x07, 0x73, 0x65, + 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x5f, 0x73, 0x65, + 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0b, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x5f, 0x6e, 0x61, 0x6e, + 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x74, 0x63, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x74, 0x63, 0x22, 0x7a, 0x0a, 0x0c, 0x54, 0x77, + 0x69, 0x74, 0x74, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x6f, + 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, + 0x0a, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x52, 0x65, 0x73, + 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, + 0x79, 0x52, 0x65, 0x73, 0x65, 0x74, 0x22, 0xb5, 0x06, 0x0a, 0x0b, 0x44, 0x69, 0x73, 0x70, 0x6c, + 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, + 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x1c, + 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, + 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x22, 0xc7, 0x02, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, - 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x17, 0x68, 0x61, 0x73, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x68, 0x61, 0x73, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x73, 0x12, 0x42, 0x0a, 0x1c, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x1c, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, + 0x74, 0x69, 0x76, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x70, 0x73, + 0x55, 0x72, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x73, 0x55, + 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x49, 0x64, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, + 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x55, 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x67, + 0x49, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x67, 0x49, 0x64, 0x12, 0x12, + 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, + 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, + 0x12, 0x32, 0x0a, 0x14, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x44, 0x61, 0x79, 0x73, 0x52, + 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, + 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x44, 0x61, 0x79, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, + 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x0f, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x52, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, + 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x42, + 0x0a, 0x1c, 0x69, 0x73, 0x45, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x47, + 0x65, 0x6f, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x14, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x1c, 0x69, 0x73, 0x45, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, + 0x46, 0x6f, 0x72, 0x47, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, + 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, + 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x75, + 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3a, + 0x0a, 0x0c, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x18, 0x17, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0c, 0x74, 0x77, + 0x69, 0x74, 0x74, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x76, 0x65, + 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x85, + 0x05, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x39, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, + 0x6d, 0x65, 0x52, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x41, 0x70, + 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, + 0x74, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x4c, 0x0a, 0x21, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x21, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, + 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, + 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, + 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, + 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x12, 0x2a, 0x0a, 0x10, + 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, + 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x6f, 0x6e, 0x74, + 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x10, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x51, + 0x75, 0x6f, 0x74, 0x61, 0x12, 0x32, 0x0a, 0x14, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, + 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x14, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, 0x43, 0x61, + 0x6c, 0x6c, 0x73, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, + 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x14, + 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0xb7, 0x02, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x2f, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, + 0xe2, 0xdf, 0x1f, 0x15, 0x2a, 0x11, 0x74, 0x69, 0x74, 0x6c, 0x65, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, + 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x68, 0x69, + 0x64, 0x65, 0x54, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0d, 0x68, 0x69, 0x64, 0x65, 0x54, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x24, + 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6f, + 0x63, 0x69, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, + 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x1c, + 0x0a, 0x09, 0x73, 0x75, 0x62, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x73, 0x75, 0x62, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, + 0x74, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, + 0x22, 0xa5, 0x01, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x28, + 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, + 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x22, 0xc7, 0x02, 0x0a, 0x12, 0x47, 0x65, 0x74, + 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x17, 0x68, + 0x61, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x68, 0x61, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, - 0x6f, 0x67, 0x42, 0x6f, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0d, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x24, 0x0a, - 0x0c, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x74, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, - 0x49, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, - 0x73, 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, - 0x72, 0x42, 0x0b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x22, 0x96, - 0x02, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x16, - 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, - 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x74, 0x6c, 0x65, - 0x12, 0x2d, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x42, 0x0a, 0x1c, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, + 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x1c, 0x69, 0x6e, 0x63, + 0x6c, 0x75, 0x64, 0x65, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, + 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0d, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x42, 0x6f, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, + 0x48, 0x00, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x42, 0x6f, 0x6f, + 0x6c, 0x12, 0x24, 0x0a, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x49, 0x6e, + 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, + 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, + 0x75, 0x72, 0x73, 0x6f, 0x72, 0x42, 0x0b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, + 0x6f, 0x67, 0x22, 0x96, 0x02, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x74, + 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x12, 0x22, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x74, 0x6c, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x54, + 0x69, 0x74, 0x6c, 0x65, 0x12, 0x2d, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x55, 0x54, + 0x43, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x55, 0x54, 0x43, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x14, 0x61, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, + 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, + 0x09, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x09, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x5c, 0x0a, 0x0a, 0x50, + 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x61, 0x73, + 0x4d, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x61, 0x73, 0x4d, + 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, + 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, + 0x73, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0xd6, 0x01, 0x0a, 0x13, 0x47, 0x65, + 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x31, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, + 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, + 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x0a, + 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x14, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x67, 0x69, + 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x22, 0x45, 0x0a, 0x05, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x74, + 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x73, + 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, + 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0xdb, 0x02, 0x0a, 0x12, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x76, + 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, + 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x3e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe2, 0xdf, + 0x1f, 0x1a, 0x2a, 0x16, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0xe4, 0xb8, + 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x0a, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x6f, 0x67, 0x6f, + 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6c, 0x6f, 0x67, 0x6f, 0x75, 0x74, + 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x24, 0x0a, 0x0d, + 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x18, 0x06, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x06, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x61, + 0x73, 0x65, 0x36, 0x34, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x62, 0x61, 0x73, 0x65, + 0x36, 0x34, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, + 0x12, 0x25, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x0f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, + 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0xa7, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, + 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, + 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x53, + 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, + 0x6e, 0x22, 0x87, 0x01, 0x0a, 0x0d, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x6f, 0x73, + 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, + 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, + 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x22, 0xfb, 0x04, 0x0a, 0x0b, + 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, + 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, + 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x31, 0x0a, + 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, + 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, + 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x37, 0x0a, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, + 0x44, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, + 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x08, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, + 0x72, 0x6f, 0x76, 0x65, 0x64, 0x42, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, + 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x42, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x70, 0x70, + 0x72, 0x6f, 0x76, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x22, 0x0a, + 0x0c, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, + 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x41, 0x70, 0x70, + 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x72, 0x65, 0x71, + 0x75, 0x69, 0x72, 0x65, 0x73, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x12, 0x22, 0x0a, + 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x11, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, + 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x55, 0x72, 0x6c, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, + 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x68, 0x6f, + 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x22, 0x8b, 0x02, 0x0a, 0x11, 0x47, 0x65, + 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1c, 0x0a, + 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, + 0x61, 0x73, 0x74, 0x44, 0x61, 0x79, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, + 0x61, 0x73, 0x74, 0x44, 0x61, 0x79, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x70, 0x6f, 0x73, + 0x74, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x6f, 0x52, + 0x65, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xb3, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, + 0x0a, 0x07, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x15, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, + 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x07, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, + 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6c, + 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, + 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x8d, 0x01, + 0x0a, 0x15, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, 0x64, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x1c, 0xe2, 0xdf, 0x1f, 0x18, 0x2a, 0x14, 0xe5, 0xb8, 0x96, 0xe5, 0xad, + 0x90, 0x49, 0x44, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, + 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x41, + 0x6c, 0x6c, 0x50, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, + 0x65, 0x61, 0x72, 0x63, 0x68, 0x41, 0x6c, 0x6c, 0x50, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x1e, 0x0a, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x90, 0x03, + 0x0a, 0x16, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, 0x64, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x65, 0x72, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x69, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, + 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, + 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x04, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, + 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, + 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x1c, 0x0a, + 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x37, 0x0a, 0x0c, 0x73, + 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, - 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x55, 0x54, 0x43, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x55, 0x54, 0x43, 0x12, - 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, - 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, - 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x75, 0x73, - 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x75, - 0x73, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x5c, 0x0a, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x61, 0x73, 0x4d, 0x6f, 0x72, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x61, 0x73, 0x4d, 0x6f, 0x72, 0x65, 0x12, - 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, - 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, - 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0xd6, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, - 0x08, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x15, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, - 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, - 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, - 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x61, - 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x45, - 0x0a, 0x05, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, - 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0x97, 0x03, 0x0a, 0x12, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, - 0x74, 0x65, 0x4a, 0x57, 0x54, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x06, - 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1a, 0xe2, 0xdf, - 0x1f, 0x16, 0x2a, 0x12, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, - 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, - 0x12, 0x3e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe2, 0xdf, 0x1f, 0x1a, 0x2a, 0x16, 0x70, 0x72, 0x69, 0x76, - 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, - 0xa9, 0xba, 0x58, 0x01, 0x52, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, - 0x12, 0x3e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe2, 0xdf, 0x1f, 0x1a, 0x2a, 0x16, 0x70, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, - 0xa9, 0xba, 0x58, 0x01, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, - 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x06, 0x6c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, - 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, 0x6c, - 0x6f, 0x77, 0x65, 0x64, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x65, - 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x76, 0x65, 0x72, 0x69, - 0x66, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x06, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, - 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x65, - 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x12, 0x25, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, - 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, - 0xa7, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x52, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, + 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x22, + 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, + 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, + 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x22, 0x84, 0x01, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x50, 0x6f, 0x73, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x7b, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x48, 0x69, + 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x20, 0xe2, 0xdf, 0x1f, 0x1c, 0x2a, 0x18, + 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x90, 0x8d, 0xe7, 0xa7, 0xb0, 0xe4, 0xb8, 0x8d, 0xe8, + 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, + 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x4b, 0x65, 0x79, 0x22, 0xa6, 0x01, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, + 0x6f, 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2c, 0x0a, + 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x50, 0x6f, 0x73, 0x74, 0x52, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6c, + 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, + 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0xe7, 0x01, + 0x0a, 0x12, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1a, 0xe2, 0xdf, 0x1f, 0x16, 0x2a, 0x12, 0xe5, 0xb9, + 0xb3, 0xe5, 0x8f, 0xb0, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, + 0x58, 0x01, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x41, 0x0a, 0x0b, + 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x1f, 0xe2, 0xdf, 0x1f, 0x1b, 0x2a, 0x17, 0xe6, 0x8e, 0xa5, 0xe6, 0x94, 0xb6, 0xe8, + 0x80, 0x85, 0x49, 0x44, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, + 0x58, 0x01, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xdb, 0x01, 0x0a, 0x0b, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x96, 0x02, 0x0a, 0x13, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x69, + 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x12, + 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x31, 0x0a, 0x08, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0xda, + 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1a, 0xe2, 0xdf, 0x1f, 0x16, 0x2a, 0x12, 0xe5, + 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, + 0xba, 0x58, 0x01, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x16, 0x0a, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, + 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, + 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, + 0x11, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x6e, + 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, + 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x39, 0x0a, 0x11, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, + 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x74, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0x78, 0x0a, 0x14, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x22, 0x0a, 0x0c, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, + 0x22, 0x57, 0x0a, 0x17, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, + 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x22, 0x3f, 0x0a, 0x0f, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, + 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x22, 0x96, 0x04, 0x0a, 0x0f, 0x47, + 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x0d, 0x73, 0x65, + 0x6e, 0x64, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x52, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, + 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x4d, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, + 0x10, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, + 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, + 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x0b, 0x61, + 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x61, + 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x37, 0x0a, 0x09, 0x72, 0x65, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x22, 0x57, 0x0a, 0x17, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x22, 0x9f, 0x01, 0x0a, + 0x12, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x43, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, + 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x0b, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x61, 0x74, 0x65, 0x72, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x09, 0x77, 0x61, 0x74, 0x65, 0x72, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xe7, + 0x02, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x35, + 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, + 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, + 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x73, 0x12, 0x50, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, + 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x14, 0x63, + 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, + 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, + 0x17, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x4d, 0x73, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xa8, 0x02, 0x0a, 0x12, 0x50, 0x6f, 0x73, + 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x26, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x16, 0xe2, 0xdf, 0x1f, + 0x12, 0x2a, 0x0e, 0x69, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, + 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x35, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe2, 0xdf, 0x1f, 0x17, 0x2a, 0x13, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, + 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x49, + 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, + 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, + 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x61, + 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, + 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, + 0x72, 0x6c, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x4b, 0x65, 0x79, 0x22, 0x86, 0x01, 0x0a, 0x18, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x9d, 0x01, 0x0a, + 0x15, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, + 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x22, 0xb0, 0x01, 0x0a, + 0x16, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, - 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, - 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x1c, 0x0a, - 0x09, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x09, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x65, - 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x32, 0xab, 0x03, 0x0a, 0x08, 0x41, 0x79, - 0x72, 0x73, 0x68, 0x61, 0x72, 0x65, 0x12, 0x35, 0x0a, 0x04, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x15, - 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, - 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, - 0x07, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, - 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, - 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, - 0x07, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, - 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, - 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, - 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1e, - 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, - 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x4a, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x1c, - 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, - 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x47, - 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x12, 0x1c, 0x2e, 0x61, 0x72, 0x79, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, - 0x54, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, - 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0c, 0x5a, 0x0a, 0x2e, 0x2f, 0x61, 0x72, 0x79, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x10, 0x0a, + 0x03, 0x63, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x22, + 0x85, 0x01, 0x0a, 0x17, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xa5, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x6e, 0x6b, + 0x65, 0x64, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, + 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x55, 0x72, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, + 0x82, 0x01, 0x0a, 0x16, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, + 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, + 0x74, 0x55, 0x72, 0x6c, 0x22, 0x84, 0x01, 0x0a, 0x16, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, + 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, + 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x89, 0x01, 0x0a, 0x0d, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x16, 0x0a, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, + 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xbc, 0x05, 0x0a, 0x13, 0x50, 0x6f, 0x73, 0x74, + 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x44, 0x12, 0x1f, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x41, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x40, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, + 0x72, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x09, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x37, 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, + 0x6f, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, + 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x12, 0x2f, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x0b, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x73, 0x12, 0x3a, 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, + 0x12, 0x3d, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, + 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, + 0x3d, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x6e, + 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x3a, + 0x0a, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, + 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x3a, 0x0a, 0x07, 0x79, 0x6f, + 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x79, + 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, 0x5b, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x16, 0xe2, 0xdf, 0x1f, 0x12, 0x2a, 0x0e, 0x69, + 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x4b, 0x65, 0x79, 0x22, 0x4f, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, + 0x55, 0x73, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, + 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x23, 0x0a, 0x11, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xc9, 0x03, 0x0a, 0x10, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x12, 0x2b, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, + 0x72, 0x61, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x16, 0x0a, + 0x06, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x68, + 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x70, + 0x6f, 0x73, 0x74, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6f, 0x73, + 0x74, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x0b, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x04, 0x75, 0x73, 0x65, + 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x55, 0x73, 0x65, 0x72, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x41, 0x6c, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, + 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xc4, 0x04, 0x0a, 0x0d, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, + 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, + 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, + 0x69, 0x6b, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x0f, 0x70, + 0x61, 0x72, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, + 0x55, 0x72, 0x6c, 0x12, 0x31, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x0e, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x72, + 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, + 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x18, 0x12, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, + 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x22, 0xb4, 0x03, 0x0a, + 0x0e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, + 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, + 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x71, 0x75, 0x6f, + 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, + 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72, + 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x72, + 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, + 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x74, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6f, + 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x22, 0x32, 0x0a, 0x0c, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, + 0x73, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x88, 0x01, 0x0a, 0x0e, 0x46, 0x61, 0x63, 0x65, + 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x04, + 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, + 0x65, 0x72, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x22, 0xac, 0x03, 0x0a, 0x0f, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x22, + 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, + 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x66, 0x72, + 0x6f, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x30, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, + 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, + 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1c, + 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x07, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, + 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, + 0x73, 0x22, 0x35, 0x0a, 0x0d, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0x66, 0x0a, 0x0c, 0x4c, 0x69, 0x6e, 0x6b, + 0x65, 0x64, 0x49, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, + 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x20, + 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0xbe, 0x03, 0x0a, 0x0f, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, + 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6e, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x04, 0x66, 0x72, + 0x6f, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x2d, 0x0a, 0x05, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x65, + 0x64, 0x49, 0x6e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x52, 0x05, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x12, + 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, + 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6f, + 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x65, 0x62, 0x73, 0x69, + 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x77, 0x65, 0x62, 0x73, 0x69, 0x74, + 0x65, 0x22, 0x30, 0x0a, 0x0a, 0x52, 0x65, 0x64, 0x64, 0x69, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x22, 0xfd, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x64, 0x64, 0x69, 0x74, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, + 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x52, 0x65, 0x64, 0x64, 0x69, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x66, 0x72, 0x6f, + 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, + 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x75, 0x62, 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x12, + 0x10, 0x0a, 0x03, 0x75, 0x70, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x75, 0x70, + 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, + 0x74, 0x65, 0x72, 0x22, 0x8c, 0x04, 0x0a, 0x0e, 0x54, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x61, 0x73, 0x52, + 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, + 0x73, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x51, 0x75, + 0x6f, 0x74, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, + 0x73, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, + 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x52, + 0x65, 0x70, 0x6c, 0x79, 0x12, 0x2a, 0x0a, 0x10, 0x69, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x4f, + 0x77, 0x6e, 0x65, 0x64, 0x42, 0x79, 0x4d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, + 0x69, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x42, 0x79, 0x4d, 0x65, + 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x32, + 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x61, + 0x64, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, + 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x41, 0x75, 0x64, 0x69, 0x65, + 0x6e, 0x63, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x70, 0x6c, 0x79, + 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x68, 0x6f, 0x72, + 0x74, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x68, 0x6f, + 0x72, 0x74, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x22, 0xe6, 0x01, 0x0a, 0x14, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x66, + 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0e, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x66, 0x6f, 0x6c, + 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x74, + 0x77, 0x65, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0a, 0x74, 0x77, 0x65, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6c, + 0x69, 0x73, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, + 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x3c, 0x0a, 0x16, 0x54, + 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, + 0x54, 0x77, 0x65, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xae, 0x02, 0x0a, 0x0e, 0x54, 0x77, + 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x12, 0x1c, 0x0a, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0f, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, + 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x44, 0x0a, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, + 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x0d, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x10, 0x0a, 0x03, + 0x75, 0x72, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x1a, + 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa4, 0x05, 0x0a, 0x0e, 0x54, + 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x24, 0x0a, + 0x0d, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, + 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x69, 0x6d, 0x70, 0x72, 0x65, + 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0f, 0x69, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, + 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, + 0x72, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x44, 0x0a, 0x0d, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, + 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, + 0x52, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, + 0x1e, 0x0a, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x4c, 0x0a, 0x10, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x54, 0x77, 0x65, + 0x65, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x66, 0x65, + 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x54, 0x77, 0x65, 0x65, 0x74, 0x52, 0x10, 0x72, 0x65, 0x66, + 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x54, 0x77, 0x65, 0x65, 0x74, 0x73, 0x12, 0x1e, 0x0a, + 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, + 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, + 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, + 0x6f, 0x12, 0x22, 0x0a, 0x0c, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x22, 0x9c, 0x02, 0x0a, 0x0c, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x52, 0x65, 0x70, + 0x6c, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x72, 0x6c, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, + 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, + 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, + 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x22, 0xd0, 0x02, 0x0a, 0x0e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x72, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, + 0x55, 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, + 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x63, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, + 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x30, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, + 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x07, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x22, 0x9e, 0x05, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, + 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x67, 0x72, 0x61, 0x6d, 0x12, 0x2f, 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x74, + 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x20, 0x0a, + 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, + 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x32, 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, + 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x35, 0x0a, 0x08, 0x66, 0x61, 0x63, + 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, + 0x12, 0x35, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x0c, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4c, 0x69, + 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x6c, + 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x64, 0x64, 0x69, + 0x74, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x52, 0x65, 0x64, 0x64, 0x69, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x52, 0x06, 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x12, 0x32, 0x0a, 0x07, 0x74, 0x68, 0x72, 0x65, + 0x61, 0x64, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x12, 0x32, 0x0a, 0x07, + 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, + 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, + 0x12, 0x32, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x10, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x59, 0x6f, 0x75, + 0x54, 0x75, 0x62, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x79, 0x6f, 0x75, + 0x74, 0x75, 0x62, 0x65, 0x22, 0xc4, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x16, 0xe2, 0xdf, 0x1f, 0x12, 0x2a, + 0x0e, 0x69, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, + 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, + 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x65, 0x61, 0x72, 0x63, + 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x73, 0x0a, 0x17, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x22, 0x8e, 0x01, 0x0a, 0x14, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x22, 0xcb, 0x02, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x63, + 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x61, 0x63, + 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, + 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, + 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x74, + 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x77, + 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, + 0xdf, 0x01, 0x0a, 0x13, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x42, 0x16, 0xe2, 0xdf, 0x1f, 0x12, 0x2a, 0x0e, 0x69, 0x64, 0xe4, 0xb8, 0x8d, + 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, + 0x35, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x1b, 0xe2, 0xdf, 0x1f, 0x17, 0x2a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0xe4, + 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, + 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, + 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, + 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x22, 0xae, 0x01, 0x0a, 0x16, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x52, + 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x22, 0xc5, 0x01, 0x0a, 0x13, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x52, 0x65, 0x70, + 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x12, 0x18, 0x0a, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x22, 0xd8, 0x01, 0x0a, 0x14, 0x42, + 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, + 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, + 0x73, 0x74, 0x55, 0x72, 0x6c, 0x22, 0xad, 0x01, 0x0a, 0x15, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, + 0x6f, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xad, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, + 0x49, 0x6e, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xc6, 0x01, 0x0a, 0x14, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, + 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, + 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x22, 0xac, + 0x01, 0x0a, 0x14, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, + 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xc1, 0x04, + 0x0a, 0x14, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, + 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3e, 0x0a, 0x09, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x35, 0x0a, 0x06, + 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x52, 0x65, + 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x74, 0x69, 0x6b, + 0x74, 0x6f, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, + 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x38, 0x0a, 0x07, 0x62, 0x6c, 0x75, + 0x65, 0x73, 0x6b, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x52, 0x65, 0x70, + 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, + 0x73, 0x6b, 0x79, 0x12, 0x3b, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, + 0x12, 0x3b, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4c, 0x69, + 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x38, 0x0a, + 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, + 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, + 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, + 0x62, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, + 0x65, 0x22, 0xb2, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1c, 0xe2, 0xdf, 0x1f, 0x18, 0x2a, + 0x14, 0xe5, 0xb8, 0x96, 0xe5, 0xad, 0x90, 0x49, 0x44, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, + 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x49, 0x0a, 0x09, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, + 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, + 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, + 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xee, 0x01, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x50, 0x6f, + 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x42, 0x79, 0x53, 0x6f, 0x63, + 0x69, 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x22, 0xe2, 0xdf, 0x1f, 0x1e, 0x2a, 0x1a, + 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x50, 0x6f, 0x73, 0x74, 0x20, 0x49, 0x44, 0xe4, 0xb8, + 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, + 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, + 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x73, + 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xe6, 0x02, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x50, + 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, + 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, + 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x18, 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, + 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x61, + 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, + 0x72, 0x61, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, + 0x67, 0x72, 0x61, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, + 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x12, 0x1a, + 0x0a, 0x08, 0x73, 0x6e, 0x61, 0x70, 0x63, 0x68, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x73, 0x6e, 0x61, 0x70, 0x63, 0x68, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x68, + 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x68, 0x72, + 0x65, 0x61, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x18, 0x0a, 0x07, + 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, + 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, + 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, + 0x22, 0x86, 0x01, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, + 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, + 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xee, 0x02, 0x0a, 0x1a, 0x47, 0x65, + 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x18, 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, + 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x61, + 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x6d, 0x62, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x67, 0x6d, 0x62, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, + 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, + 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, + 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x6e, 0x61, 0x70, + 0x63, 0x68, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x6e, 0x61, 0x70, + 0x63, 0x68, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x12, 0x16, + 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, + 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, + 0x12, 0x18, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, 0xb3, 0x01, 0x0a, 0x13, 0x41, + 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x32, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x1e, 0xe2, 0xdf, 0x1f, 0x1a, 0x2a, 0x16, 0x70, 0x6f, 0x73, 0x74, 0xe5, 0x86, 0x85, 0xe5, + 0xae, 0xb9, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, + 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, + 0x22, 0x88, 0x01, 0x0a, 0x14, 0x41, 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x16, 0x0a, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, + 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x72, 0x0a, 0x19, 0x43, + 0x68, 0x65, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, + 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x07, 0x68, 0x61, 0x73, 0x68, + 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe2, 0xdf, 0x1f, 0x17, 0x2a, + 0x13, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, + 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x12, + 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, + 0xac, 0x01, 0x0a, 0x1a, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, + 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x61, 0x6e, 0x6e, + 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, + 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, + 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x49, + 0x0a, 0x15, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x69, 0x65, 0x77, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x76, 0x69, 0x65, 0x77, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x71, 0x0a, 0x18, 0x52, 0x65, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe2, 0xdf, 0x1f, 0x17, 0x2a, 0x13, 0x6b, 0x65, + 0x79, 0x77, 0x6f, 0x72, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, + 0xba, 0x58, 0x01, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1e, 0x0a, 0x0a, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xde, 0x01, 0x0a, + 0x19, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, + 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, + 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, + 0x77, 0x6f, 0x72, 0x64, 0x12, 0x49, 0x0a, 0x0f, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, + 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, + 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, + 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, + 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x8e, 0x01, + 0x0a, 0x15, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, + 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe2, 0xdf, 0x1f, 0x17, 0x2a, 0x13, + 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, + 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, + 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x37, + 0x0a, 0x11, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x24, 0x0a, 0x12, 0x53, 0x65, 0x61, 0x72, 0x63, + 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x49, 0x0a, + 0x15, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x43, 0x68, + 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x30, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x43, 0x68, 0x69, + 0x6c, 0x64, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb5, 0x02, 0x0a, 0x12, 0x53, 0x65, 0x61, + 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x08, 0x63, 0x68, 0x69, + 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, + 0x68, 0x74, 0x61, 0x67, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x52, 0x08, 0x63, 0x68, + 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, + 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x55, 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x55, 0x72, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x6e, + 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6c, 0x69, + 0x6e, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x22, 0xc9, 0x02, 0x0a, 0x16, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, + 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x35, 0x0a, 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x12, 0x42, 0x0a, 0x0d, 0x73, 0x65, + 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, + 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x52, + 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x14, + 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, + 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, + 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x32, 0x8c, 0x0e, 0x0a, + 0x08, 0x41, 0x79, 0x72, 0x73, 0x68, 0x61, 0x72, 0x65, 0x12, 0x35, 0x0a, 0x04, 0x50, 0x6f, 0x73, + 0x74, 0x12, 0x15, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x3e, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x18, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x3e, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x18, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x50, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x12, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x73, 0x12, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, + 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, + 0x0a, 0x0b, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x12, 0x1c, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, + 0x65, 0x4a, 0x57, 0x54, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, + 0x57, 0x54, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0a, 0x47, 0x65, + 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x42, 0x79, 0x49, 0x64, 0x12, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, 0x64, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, 0x64, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x12, 0x25, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x4a, 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1c, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x47, + 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x50, 0x6f, 0x73, 0x74, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x12, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, + 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0d, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, + 0x0a, 0x0c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1d, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, + 0x10, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, + 0x73, 0x12, 0x21, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, + 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6d, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x50, + 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x42, 0x79, 0x53, 0x6f, + 0x63, 0x69, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x2b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, + 0x63, 0x73, 0x42, 0x79, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, + 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x6f, + 0x63, 0x69, 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x12, 0x23, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, + 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0c, 0x41, 0x75, 0x74, 0x6f, + 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x12, 0x43, 0x68, 0x65, 0x63, 0x6b, + 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x12, 0x23, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x42, 0x61, + 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x11, 0x52, 0x65, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x12, 0x22, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x23, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x0e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, + 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, + 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, + 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0c, 0x5a, 0x0a, 0x2e, + 0x2f, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, } var ( @@ -2890,64 +12173,245 @@ func file_pb_ayrshare_proto_rawDescGZIP() []byte { return file_pb_ayrshare_proto_rawDescData } -var file_pb_ayrshare_proto_msgTypes = make([]protoimpl.MessageInfo, 23) +var file_pb_ayrshare_proto_msgTypes = make([]protoimpl.MessageInfo, 109) var file_pb_ayrshare_proto_goTypes = []interface{}{ - (*UserTag)(nil), // 0: aryshare.UserTag - (*InstagramOptions)(nil), // 1: aryshare.InstagramOptions - (*TikTokOptions)(nil), // 2: aryshare.TikTokOptions - (*PostRequest)(nil), // 3: aryshare.PostRequest - (*PostId)(nil), // 4: aryshare.PostId - (*PostItem)(nil), // 5: aryshare.PostItem - (*PostResponse)(nil), // 6: aryshare.PostResponse - (*GetPostRequest)(nil), // 7: aryshare.GetPostRequest - (*GetPostResponse)(nil), // 8: aryshare.GetPostResponse - (*GetUserRequest)(nil), // 9: aryshare.GetUserRequest - (*Timestamp)(nil), // 10: aryshare.Timestamp - (*TwitterUsage)(nil), // 11: aryshare.TwitterUsage - (*DisplayName)(nil), // 12: aryshare.DisplayName - (*GetUserResponse)(nil), // 13: aryshare.GetUserResponse - (*CreateProfileRequest)(nil), // 14: aryshare.CreateProfileRequest - (*CreateProfileResponse)(nil), // 15: aryshare.CreateProfileResponse - (*GetProfilesRequest)(nil), // 16: aryshare.GetProfilesRequest - (*ProfileItem)(nil), // 17: aryshare.ProfileItem - (*Pagination)(nil), // 18: aryshare.Pagination - (*GetProfilesResponse)(nil), // 19: aryshare.GetProfilesResponse - (*Email)(nil), // 20: aryshare.Email - (*GenerateJWTRequest)(nil), // 21: aryshare.GenerateJWTRequest - (*GenerateJWTResponse)(nil), // 22: aryshare.GenerateJWTResponse + (*UserTag)(nil), // 0: aryshare.UserTag + (*InstagramOptions)(nil), // 1: aryshare.InstagramOptions + (*TikTokOptions)(nil), // 2: aryshare.TikTokOptions + (*YouTubeOptions)(nil), // 3: aryshare.YouTubeOptions + (*BlueskyOptions)(nil), // 4: aryshare.BlueskyOptions + (*PostRequest)(nil), // 5: aryshare.PostRequest + (*PostId)(nil), // 6: aryshare.PostId + (*PostItem)(nil), // 7: aryshare.PostItem + (*PostResponse)(nil), // 8: aryshare.PostResponse + (*GetPostRequest)(nil), // 9: aryshare.GetPostRequest + (*GetPostResponse)(nil), // 10: aryshare.GetPostResponse + (*GetUserRequest)(nil), // 11: aryshare.GetUserRequest + (*Timestamp)(nil), // 12: aryshare.Timestamp + (*TwitterUsage)(nil), // 13: aryshare.TwitterUsage + (*DisplayName)(nil), // 14: aryshare.DisplayName + (*GetUserResponse)(nil), // 15: aryshare.GetUserResponse + (*CreateProfileRequest)(nil), // 16: aryshare.CreateProfileRequest + (*CreateProfileResponse)(nil), // 17: aryshare.CreateProfileResponse + (*GetProfilesRequest)(nil), // 18: aryshare.GetProfilesRequest + (*ProfileItem)(nil), // 19: aryshare.ProfileItem + (*Pagination)(nil), // 20: aryshare.Pagination + (*GetProfilesResponse)(nil), // 21: aryshare.GetProfilesResponse + (*Email)(nil), // 22: aryshare.Email + (*GenerateJWTRequest)(nil), // 23: aryshare.GenerateJWTRequest + (*GenerateJWTResponse)(nil), // 24: aryshare.GenerateJWTResponse + (*HistoryPostId)(nil), // 25: aryshare.HistoryPostId + (*HistoryItem)(nil), // 26: aryshare.HistoryItem + (*GetHistoryRequest)(nil), // 27: aryshare.GetHistoryRequest + (*GetHistoryResponse)(nil), // 28: aryshare.GetHistoryResponse + (*GetHistoryByIdRequest)(nil), // 29: aryshare.GetHistoryByIdRequest + (*GetHistoryByIdResponse)(nil), // 30: aryshare.GetHistoryByIdResponse + (*PlatformPost)(nil), // 31: aryshare.PlatformPost + (*GetHistoryByPlatformRequest)(nil), // 32: aryshare.GetHistoryByPlatformRequest + (*GetHistoryByPlatformResponse)(nil), // 33: aryshare.GetHistoryByPlatformResponse + (*SendMessageRequest)(nil), // 34: aryshare.SendMessageRequest + (*MessageItem)(nil), // 35: aryshare.MessageItem + (*SendMessageResponse)(nil), // 36: aryshare.SendMessageResponse + (*GetMessagesRequest)(nil), // 37: aryshare.GetMessagesRequest + (*MessageAttachment)(nil), // 38: aryshare.MessageAttachment + (*MessageSenderDetails)(nil), // 39: aryshare.MessageSenderDetails + (*MessageRecipientDetails)(nil), // 40: aryshare.MessageRecipientDetails + (*MessageReaction)(nil), // 41: aryshare.MessageReaction + (*GetMessagesItem)(nil), // 42: aryshare.GetMessagesItem + (*ConversationParticipant)(nil), // 43: aryshare.ConversationParticipant + (*ConversationDetail)(nil), // 44: aryshare.ConversationDetail + (*GetMessagesResponse)(nil), // 45: aryshare.GetMessagesResponse + (*PostCommentRequest)(nil), // 46: aryshare.PostCommentRequest + (*InstagramCommentResponse)(nil), // 47: aryshare.InstagramCommentResponse + (*TikTokCommentResponse)(nil), // 48: aryshare.TikTokCommentResponse + (*BlueskyCommentResponse)(nil), // 49: aryshare.BlueskyCommentResponse + (*FacebookCommentResponse)(nil), // 50: aryshare.FacebookCommentResponse + (*LinkedInCommentResponse)(nil), // 51: aryshare.LinkedInCommentResponse + (*TwitterCommentResponse)(nil), // 52: aryshare.TwitterCommentResponse + (*YouTubeCommentResponse)(nil), // 53: aryshare.YouTubeCommentResponse + (*PlatformError)(nil), // 54: aryshare.PlatformError + (*PostCommentResponse)(nil), // 55: aryshare.PostCommentResponse + (*GetCommentRequest)(nil), // 56: aryshare.GetCommentRequest + (*InstagramUser)(nil), // 57: aryshare.InstagramUser + (*InstagramUserInfo)(nil), // 58: aryshare.InstagramUserInfo + (*InstagramComment)(nil), // 59: aryshare.InstagramComment + (*TikTokComment)(nil), // 60: aryshare.TikTokComment + (*BlueskyComment)(nil), // 61: aryshare.BlueskyComment + (*FacebookUser)(nil), // 62: aryshare.FacebookUser + (*FacebookParent)(nil), // 63: aryshare.FacebookParent + (*FacebookComment)(nil), // 64: aryshare.FacebookComment + (*LinkedInMedia)(nil), // 65: aryshare.LinkedInMedia + (*LinkedInFrom)(nil), // 66: aryshare.LinkedInFrom + (*LinkedInComment)(nil), // 67: aryshare.LinkedInComment + (*RedditUser)(nil), // 68: aryshare.RedditUser + (*RedditComment)(nil), // 69: aryshare.RedditComment + (*ThreadsComment)(nil), // 70: aryshare.ThreadsComment + (*TwitterPublicMetrics)(nil), // 71: aryshare.TwitterPublicMetrics + (*TwitterReferencedTweet)(nil), // 72: aryshare.TwitterReferencedTweet + (*TwitterReplyTo)(nil), // 73: aryshare.TwitterReplyTo + (*TwitterComment)(nil), // 74: aryshare.TwitterComment + (*YouTubeReply)(nil), // 75: aryshare.YouTubeReply + (*YouTubeComment)(nil), // 76: aryshare.YouTubeComment + (*GetCommentResponse)(nil), // 77: aryshare.GetCommentResponse + (*DeleteCommentRequest)(nil), // 78: aryshare.DeleteCommentRequest + (*InstagramDeleteResponse)(nil), // 79: aryshare.InstagramDeleteResponse + (*TikTokDeleteResponse)(nil), // 80: aryshare.TikTokDeleteResponse + (*DeleteCommentResponse)(nil), // 81: aryshare.DeleteCommentResponse + (*ReplyCommentRequest)(nil), // 82: aryshare.ReplyCommentRequest + (*InstagramReplyResponse)(nil), // 83: aryshare.InstagramReplyResponse + (*TikTokReplyResponse)(nil), // 84: aryshare.TikTokReplyResponse + (*BlueskyReplyResponse)(nil), // 85: aryshare.BlueskyReplyResponse + (*FacebookReplyResponse)(nil), // 86: aryshare.FacebookReplyResponse + (*LinkedInReplyResponse)(nil), // 87: aryshare.LinkedInReplyResponse + (*TwitterReplyResponse)(nil), // 88: aryshare.TwitterReplyResponse + (*YouTubeReplyResponse)(nil), // 89: aryshare.YouTubeReplyResponse + (*ReplyCommentResponse)(nil), // 90: aryshare.ReplyCommentResponse + (*GetPostAnalyticsRequest)(nil), // 91: aryshare.GetPostAnalyticsRequest + (*GetPostAnalyticsBySocialIDRequest)(nil), // 92: aryshare.GetPostAnalyticsBySocialIDRequest + (*GetPostAnalyticsResponse)(nil), // 93: aryshare.GetPostAnalyticsResponse + (*GetSocialAnalyticsRequest)(nil), // 94: aryshare.GetSocialAnalyticsRequest + (*GetSocialAnalyticsResponse)(nil), // 95: aryshare.GetSocialAnalyticsResponse + (*AutoHashtagsRequest)(nil), // 96: aryshare.AutoHashtagsRequest + (*AutoHashtagsResponse)(nil), // 97: aryshare.AutoHashtagsResponse + (*CheckBannedHashtagRequest)(nil), // 98: aryshare.CheckBannedHashtagRequest + (*CheckBannedHashtagResponse)(nil), // 99: aryshare.CheckBannedHashtagResponse + (*HashtagRecommendation)(nil), // 100: aryshare.HashtagRecommendation + (*RecommendHashtagsRequest)(nil), // 101: aryshare.RecommendHashtagsRequest + (*RecommendHashtagsResponse)(nil), // 102: aryshare.RecommendHashtagsResponse + (*SearchHashtagsRequest)(nil), // 103: aryshare.SearchHashtagsRequest + (*SearchHashtagInfo)(nil), // 104: aryshare.SearchHashtagInfo + (*SearchHashtagChild)(nil), // 105: aryshare.SearchHashtagChild + (*SearchHashtagChildren)(nil), // 106: aryshare.SearchHashtagChildren + (*SearchHashtagMedia)(nil), // 107: aryshare.SearchHashtagMedia + (*SearchHashtagsResponse)(nil), // 108: aryshare.SearchHashtagsResponse } var file_pb_ayrshare_proto_depIdxs = []int32{ - 0, // 0: aryshare.InstagramOptions.userTags:type_name -> aryshare.UserTag - 1, // 1: aryshare.PostRequest.instagramOptions:type_name -> aryshare.InstagramOptions - 2, // 2: aryshare.PostRequest.tikTokOptions:type_name -> aryshare.TikTokOptions - 4, // 3: aryshare.PostItem.postIds:type_name -> aryshare.PostId - 5, // 4: aryshare.PostResponse.posts:type_name -> aryshare.PostItem - 4, // 5: aryshare.PostResponse.postIds:type_name -> aryshare.PostId - 4, // 6: aryshare.GetPostResponse.postIds:type_name -> aryshare.PostId - 11, // 7: aryshare.DisplayName.twitterUsage:type_name -> aryshare.TwitterUsage - 10, // 8: aryshare.GetUserResponse.created:type_name -> aryshare.Timestamp - 12, // 9: aryshare.GetUserResponse.displayNames:type_name -> aryshare.DisplayName - 10, // 10: aryshare.ProfileItem.created:type_name -> aryshare.Timestamp - 17, // 11: aryshare.GetProfilesResponse.profiles:type_name -> aryshare.ProfileItem - 18, // 12: aryshare.GetProfilesResponse.pagination:type_name -> aryshare.Pagination - 20, // 13: aryshare.GenerateJWTRequest.email:type_name -> aryshare.Email - 3, // 14: aryshare.Ayrshare.Post:input_type -> aryshare.PostRequest - 7, // 15: aryshare.Ayrshare.GetPost:input_type -> aryshare.GetPostRequest - 9, // 16: aryshare.Ayrshare.GetUser:input_type -> aryshare.GetUserRequest - 14, // 17: aryshare.Ayrshare.CreateProfile:input_type -> aryshare.CreateProfileRequest - 16, // 18: aryshare.Ayrshare.GetProfiles:input_type -> aryshare.GetProfilesRequest - 21, // 19: aryshare.Ayrshare.GenerateJWT:input_type -> aryshare.GenerateJWTRequest - 6, // 20: aryshare.Ayrshare.Post:output_type -> aryshare.PostResponse - 8, // 21: aryshare.Ayrshare.GetPost:output_type -> aryshare.GetPostResponse - 13, // 22: aryshare.Ayrshare.GetUser:output_type -> aryshare.GetUserResponse - 15, // 23: aryshare.Ayrshare.CreateProfile:output_type -> aryshare.CreateProfileResponse - 19, // 24: aryshare.Ayrshare.GetProfiles:output_type -> aryshare.GetProfilesResponse - 22, // 25: aryshare.Ayrshare.GenerateJWT:output_type -> aryshare.GenerateJWTResponse - 20, // [20:26] is the sub-list for method output_type - 14, // [14:20] is the sub-list for method input_type - 14, // [14:14] is the sub-list for extension type_name - 14, // [14:14] is the sub-list for extension extendee - 0, // [0:14] is the sub-list for field type_name + 0, // 0: aryshare.InstagramOptions.userTags:type_name -> aryshare.UserTag + 1, // 1: aryshare.PostRequest.instagramOptions:type_name -> aryshare.InstagramOptions + 2, // 2: aryshare.PostRequest.tikTokOptions:type_name -> aryshare.TikTokOptions + 3, // 3: aryshare.PostRequest.youTubeOptions:type_name -> aryshare.YouTubeOptions + 4, // 4: aryshare.PostRequest.blueskyOptions:type_name -> aryshare.BlueskyOptions + 6, // 5: aryshare.PostItem.postIds:type_name -> aryshare.PostId + 7, // 6: aryshare.PostResponse.posts:type_name -> aryshare.PostItem + 6, // 7: aryshare.PostResponse.postIds:type_name -> aryshare.PostId + 6, // 8: aryshare.GetPostResponse.postIds:type_name -> aryshare.PostId + 13, // 9: aryshare.DisplayName.twitterUsage:type_name -> aryshare.TwitterUsage + 12, // 10: aryshare.GetUserResponse.created:type_name -> aryshare.Timestamp + 14, // 11: aryshare.GetUserResponse.displayNames:type_name -> aryshare.DisplayName + 12, // 12: aryshare.ProfileItem.created:type_name -> aryshare.Timestamp + 19, // 13: aryshare.GetProfilesResponse.profiles:type_name -> aryshare.ProfileItem + 20, // 14: aryshare.GetProfilesResponse.pagination:type_name -> aryshare.Pagination + 22, // 15: aryshare.GenerateJWTRequest.email:type_name -> aryshare.Email + 25, // 16: aryshare.HistoryItem.postIds:type_name -> aryshare.HistoryPostId + 12, // 17: aryshare.HistoryItem.scheduleDate:type_name -> aryshare.Timestamp + 26, // 18: aryshare.GetHistoryResponse.history:type_name -> aryshare.HistoryItem + 25, // 19: aryshare.GetHistoryByIdResponse.postIds:type_name -> aryshare.HistoryPostId + 12, // 20: aryshare.GetHistoryByIdResponse.scheduleDate:type_name -> aryshare.Timestamp + 31, // 21: aryshare.GetHistoryByPlatformResponse.posts:type_name -> aryshare.PlatformPost + 35, // 22: aryshare.SendMessageResponse.messages:type_name -> aryshare.MessageItem + 39, // 23: aryshare.GetMessagesItem.senderDetails:type_name -> aryshare.MessageSenderDetails + 40, // 24: aryshare.GetMessagesItem.recipientDetails:type_name -> aryshare.MessageRecipientDetails + 38, // 25: aryshare.GetMessagesItem.attachments:type_name -> aryshare.MessageAttachment + 41, // 26: aryshare.GetMessagesItem.reactions:type_name -> aryshare.MessageReaction + 43, // 27: aryshare.ConversationDetail.participant:type_name -> aryshare.ConversationParticipant + 42, // 28: aryshare.GetMessagesResponse.messages:type_name -> aryshare.GetMessagesItem + 44, // 29: aryshare.GetMessagesResponse.conversationsDetails:type_name -> aryshare.ConversationDetail + 47, // 30: aryshare.PostCommentResponse.instagram:type_name -> aryshare.InstagramCommentResponse + 48, // 31: aryshare.PostCommentResponse.tiktok:type_name -> aryshare.TikTokCommentResponse + 54, // 32: aryshare.PostCommentResponse.errors:type_name -> aryshare.PlatformError + 49, // 33: aryshare.PostCommentResponse.bluesky:type_name -> aryshare.BlueskyCommentResponse + 50, // 34: aryshare.PostCommentResponse.facebook:type_name -> aryshare.FacebookCommentResponse + 51, // 35: aryshare.PostCommentResponse.linkedin:type_name -> aryshare.LinkedInCommentResponse + 52, // 36: aryshare.PostCommentResponse.twitter:type_name -> aryshare.TwitterCommentResponse + 53, // 37: aryshare.PostCommentResponse.youtube:type_name -> aryshare.YouTubeCommentResponse + 57, // 38: aryshare.InstagramComment.from:type_name -> aryshare.InstagramUser + 59, // 39: aryshare.InstagramComment.replies:type_name -> aryshare.InstagramComment + 58, // 40: aryshare.InstagramComment.user:type_name -> aryshare.InstagramUserInfo + 60, // 41: aryshare.TikTokComment.replies:type_name -> aryshare.TikTokComment + 61, // 42: aryshare.BlueskyComment.replies:type_name -> aryshare.BlueskyComment + 62, // 43: aryshare.FacebookParent.from:type_name -> aryshare.FacebookUser + 62, // 44: aryshare.FacebookComment.from:type_name -> aryshare.FacebookUser + 63, // 45: aryshare.FacebookComment.parent:type_name -> aryshare.FacebookParent + 64, // 46: aryshare.FacebookComment.replies:type_name -> aryshare.FacebookComment + 66, // 47: aryshare.LinkedInComment.from:type_name -> aryshare.LinkedInFrom + 65, // 48: aryshare.LinkedInComment.media:type_name -> aryshare.LinkedInMedia + 68, // 49: aryshare.RedditComment.from:type_name -> aryshare.RedditUser + 70, // 50: aryshare.ThreadsComment.replies:type_name -> aryshare.ThreadsComment + 71, // 51: aryshare.TwitterReplyTo.publicMetrics:type_name -> aryshare.TwitterPublicMetrics + 71, // 52: aryshare.TwitterComment.publicMetrics:type_name -> aryshare.TwitterPublicMetrics + 72, // 53: aryshare.TwitterComment.referencedTweets:type_name -> aryshare.TwitterReferencedTweet + 73, // 54: aryshare.TwitterComment.replyTo:type_name -> aryshare.TwitterReplyTo + 75, // 55: aryshare.YouTubeComment.replies:type_name -> aryshare.YouTubeReply + 59, // 56: aryshare.GetCommentResponse.instagram:type_name -> aryshare.InstagramComment + 60, // 57: aryshare.GetCommentResponse.tiktok:type_name -> aryshare.TikTokComment + 61, // 58: aryshare.GetCommentResponse.bluesky:type_name -> aryshare.BlueskyComment + 64, // 59: aryshare.GetCommentResponse.facebook:type_name -> aryshare.FacebookComment + 67, // 60: aryshare.GetCommentResponse.linkedin:type_name -> aryshare.LinkedInComment + 69, // 61: aryshare.GetCommentResponse.reddit:type_name -> aryshare.RedditComment + 70, // 62: aryshare.GetCommentResponse.threads:type_name -> aryshare.ThreadsComment + 74, // 63: aryshare.GetCommentResponse.twitter:type_name -> aryshare.TwitterComment + 76, // 64: aryshare.GetCommentResponse.youtube:type_name -> aryshare.YouTubeComment + 83, // 65: aryshare.ReplyCommentResponse.instagram:type_name -> aryshare.InstagramReplyResponse + 84, // 66: aryshare.ReplyCommentResponse.tiktok:type_name -> aryshare.TikTokReplyResponse + 85, // 67: aryshare.ReplyCommentResponse.bluesky:type_name -> aryshare.BlueskyReplyResponse + 86, // 68: aryshare.ReplyCommentResponse.facebook:type_name -> aryshare.FacebookReplyResponse + 87, // 69: aryshare.ReplyCommentResponse.linkedin:type_name -> aryshare.LinkedInReplyResponse + 88, // 70: aryshare.ReplyCommentResponse.twitter:type_name -> aryshare.TwitterReplyResponse + 89, // 71: aryshare.ReplyCommentResponse.youtube:type_name -> aryshare.YouTubeReplyResponse + 100, // 72: aryshare.RecommendHashtagsResponse.recommendations:type_name -> aryshare.HashtagRecommendation + 105, // 73: aryshare.SearchHashtagChildren.data:type_name -> aryshare.SearchHashtagChild + 106, // 74: aryshare.SearchHashtagMedia.children:type_name -> aryshare.SearchHashtagChildren + 104, // 75: aryshare.SearchHashtagsResponse.hashtag:type_name -> aryshare.SearchHashtagInfo + 107, // 76: aryshare.SearchHashtagsResponse.searchResults:type_name -> aryshare.SearchHashtagMedia + 5, // 77: aryshare.Ayrshare.Post:input_type -> aryshare.PostRequest + 9, // 78: aryshare.Ayrshare.GetPost:input_type -> aryshare.GetPostRequest + 11, // 79: aryshare.Ayrshare.GetUser:input_type -> aryshare.GetUserRequest + 16, // 80: aryshare.Ayrshare.CreateProfile:input_type -> aryshare.CreateProfileRequest + 18, // 81: aryshare.Ayrshare.GetProfiles:input_type -> aryshare.GetProfilesRequest + 23, // 82: aryshare.Ayrshare.GenerateJWT:input_type -> aryshare.GenerateJWTRequest + 27, // 83: aryshare.Ayrshare.GetHistory:input_type -> aryshare.GetHistoryRequest + 29, // 84: aryshare.Ayrshare.GetHistoryById:input_type -> aryshare.GetHistoryByIdRequest + 32, // 85: aryshare.Ayrshare.GetHistoryByPlatform:input_type -> aryshare.GetHistoryByPlatformRequest + 34, // 86: aryshare.Ayrshare.SendMessage:input_type -> aryshare.SendMessageRequest + 37, // 87: aryshare.Ayrshare.GetMessages:input_type -> aryshare.GetMessagesRequest + 46, // 88: aryshare.Ayrshare.PostComment:input_type -> aryshare.PostCommentRequest + 56, // 89: aryshare.Ayrshare.GetComment:input_type -> aryshare.GetCommentRequest + 78, // 90: aryshare.Ayrshare.DeleteComment:input_type -> aryshare.DeleteCommentRequest + 82, // 91: aryshare.Ayrshare.ReplyComment:input_type -> aryshare.ReplyCommentRequest + 91, // 92: aryshare.Ayrshare.GetPostAnalytics:input_type -> aryshare.GetPostAnalyticsRequest + 92, // 93: aryshare.Ayrshare.GetPostAnalyticsBySocialID:input_type -> aryshare.GetPostAnalyticsBySocialIDRequest + 94, // 94: aryshare.Ayrshare.GetSocialAnalytics:input_type -> aryshare.GetSocialAnalyticsRequest + 96, // 95: aryshare.Ayrshare.AutoHashtags:input_type -> aryshare.AutoHashtagsRequest + 98, // 96: aryshare.Ayrshare.CheckBannedHashtag:input_type -> aryshare.CheckBannedHashtagRequest + 101, // 97: aryshare.Ayrshare.RecommendHashtags:input_type -> aryshare.RecommendHashtagsRequest + 103, // 98: aryshare.Ayrshare.SearchHashtags:input_type -> aryshare.SearchHashtagsRequest + 8, // 99: aryshare.Ayrshare.Post:output_type -> aryshare.PostResponse + 10, // 100: aryshare.Ayrshare.GetPost:output_type -> aryshare.GetPostResponse + 15, // 101: aryshare.Ayrshare.GetUser:output_type -> aryshare.GetUserResponse + 17, // 102: aryshare.Ayrshare.CreateProfile:output_type -> aryshare.CreateProfileResponse + 21, // 103: aryshare.Ayrshare.GetProfiles:output_type -> aryshare.GetProfilesResponse + 24, // 104: aryshare.Ayrshare.GenerateJWT:output_type -> aryshare.GenerateJWTResponse + 28, // 105: aryshare.Ayrshare.GetHistory:output_type -> aryshare.GetHistoryResponse + 30, // 106: aryshare.Ayrshare.GetHistoryById:output_type -> aryshare.GetHistoryByIdResponse + 33, // 107: aryshare.Ayrshare.GetHistoryByPlatform:output_type -> aryshare.GetHistoryByPlatformResponse + 36, // 108: aryshare.Ayrshare.SendMessage:output_type -> aryshare.SendMessageResponse + 45, // 109: aryshare.Ayrshare.GetMessages:output_type -> aryshare.GetMessagesResponse + 55, // 110: aryshare.Ayrshare.PostComment:output_type -> aryshare.PostCommentResponse + 77, // 111: aryshare.Ayrshare.GetComment:output_type -> aryshare.GetCommentResponse + 81, // 112: aryshare.Ayrshare.DeleteComment:output_type -> aryshare.DeleteCommentResponse + 90, // 113: aryshare.Ayrshare.ReplyComment:output_type -> aryshare.ReplyCommentResponse + 93, // 114: aryshare.Ayrshare.GetPostAnalytics:output_type -> aryshare.GetPostAnalyticsResponse + 93, // 115: aryshare.Ayrshare.GetPostAnalyticsBySocialID:output_type -> aryshare.GetPostAnalyticsResponse + 95, // 116: aryshare.Ayrshare.GetSocialAnalytics:output_type -> aryshare.GetSocialAnalyticsResponse + 97, // 117: aryshare.Ayrshare.AutoHashtags:output_type -> aryshare.AutoHashtagsResponse + 99, // 118: aryshare.Ayrshare.CheckBannedHashtag:output_type -> aryshare.CheckBannedHashtagResponse + 102, // 119: aryshare.Ayrshare.RecommendHashtags:output_type -> aryshare.RecommendHashtagsResponse + 108, // 120: aryshare.Ayrshare.SearchHashtags:output_type -> aryshare.SearchHashtagsResponse + 99, // [99:121] is the sub-list for method output_type + 77, // [77:99] is the sub-list for method input_type + 77, // [77:77] is the sub-list for extension type_name + 77, // [77:77] is the sub-list for extension extendee + 0, // [0:77] is the sub-list for field type_name } func init() { file_pb_ayrshare_proto_init() } @@ -2993,7 +12457,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PostRequest); i { + switch v := v.(*YouTubeOptions); i { case 0: return &v.state case 1: @@ -3005,7 +12469,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PostId); i { + switch v := v.(*BlueskyOptions); i { case 0: return &v.state case 1: @@ -3017,7 +12481,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PostItem); i { + switch v := v.(*PostRequest); i { case 0: return &v.state case 1: @@ -3029,7 +12493,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PostResponse); i { + switch v := v.(*PostId); i { case 0: return &v.state case 1: @@ -3041,7 +12505,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPostRequest); i { + switch v := v.(*PostItem); i { case 0: return &v.state case 1: @@ -3053,7 +12517,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPostResponse); i { + switch v := v.(*PostResponse); i { case 0: return &v.state case 1: @@ -3065,7 +12529,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserRequest); i { + switch v := v.(*GetPostRequest); i { case 0: return &v.state case 1: @@ -3077,7 +12541,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Timestamp); i { + switch v := v.(*GetPostResponse); i { case 0: return &v.state case 1: @@ -3089,7 +12553,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TwitterUsage); i { + switch v := v.(*GetUserRequest); i { case 0: return &v.state case 1: @@ -3101,7 +12565,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DisplayName); i { + switch v := v.(*Timestamp); i { case 0: return &v.state case 1: @@ -3113,7 +12577,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetUserResponse); i { + switch v := v.(*TwitterUsage); i { case 0: return &v.state case 1: @@ -3125,7 +12589,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateProfileRequest); i { + switch v := v.(*DisplayName); i { case 0: return &v.state case 1: @@ -3137,7 +12601,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateProfileResponse); i { + switch v := v.(*GetUserResponse); i { case 0: return &v.state case 1: @@ -3149,7 +12613,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetProfilesRequest); i { + switch v := v.(*CreateProfileRequest); i { case 0: return &v.state case 1: @@ -3161,7 +12625,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ProfileItem); i { + switch v := v.(*CreateProfileResponse); i { case 0: return &v.state case 1: @@ -3173,7 +12637,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Pagination); i { + switch v := v.(*GetProfilesRequest); i { case 0: return &v.state case 1: @@ -3185,7 +12649,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetProfilesResponse); i { + switch v := v.(*ProfileItem); i { case 0: return &v.state case 1: @@ -3197,7 +12661,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Email); i { + switch v := v.(*Pagination); i { case 0: return &v.state case 1: @@ -3209,7 +12673,7 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GenerateJWTRequest); i { + switch v := v.(*GetProfilesResponse); i { case 0: return &v.state case 1: @@ -3221,6 +12685,30 @@ func file_pb_ayrshare_proto_init() { } } file_pb_ayrshare_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*Email); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GenerateJWTRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GenerateJWTResponse); i { case 0: return &v.state @@ -3232,8 +12720,1016 @@ func file_pb_ayrshare_proto_init() { return nil } } + file_pb_ayrshare_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*HistoryPostId); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*HistoryItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetHistoryRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetHistoryResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetHistoryByIdRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetHistoryByIdResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PlatformPost); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetHistoryByPlatformRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetHistoryByPlatformResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SendMessageRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MessageItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SendMessageResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetMessagesRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MessageAttachment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MessageSenderDetails); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MessageRecipientDetails); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MessageReaction); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetMessagesItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ConversationParticipant); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ConversationDetail); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetMessagesResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PostCommentRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstagramCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TikTokCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BlueskyCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*FacebookCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LinkedInCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TwitterCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*YouTubeCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PlatformError); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PostCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetCommentRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstagramUser); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstagramUserInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstagramComment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TikTokComment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BlueskyComment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*FacebookUser); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*FacebookParent); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*FacebookComment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LinkedInMedia); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LinkedInFrom); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LinkedInComment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RedditUser); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RedditComment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ThreadsComment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TwitterPublicMetrics); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TwitterReferencedTweet); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TwitterReplyTo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TwitterComment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*YouTubeReply); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*YouTubeComment); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteCommentRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstagramDeleteResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TikTokDeleteResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplyCommentRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*InstagramReplyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TikTokReplyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BlueskyReplyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*FacebookReplyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*LinkedInReplyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TwitterReplyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*YouTubeReplyResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ReplyCommentResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetPostAnalyticsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetPostAnalyticsBySocialIDRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetPostAnalyticsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetSocialAnalyticsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetSocialAnalyticsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AutoHashtagsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AutoHashtagsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CheckBannedHashtagRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CheckBannedHashtagResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*HashtagRecommendation); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RecommendHashtagsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RecommendHashtagsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SearchHashtagsRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SearchHashtagInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SearchHashtagChild); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SearchHashtagChildren); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SearchHashtagMedia); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_ayrshare_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SearchHashtagsResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } } - file_pb_ayrshare_proto_msgTypes[16].OneofWrappers = []interface{}{ + file_pb_ayrshare_proto_msgTypes[18].OneofWrappers = []interface{}{ (*GetProfilesRequest_ActionLogBool)(nil), (*GetProfilesRequest_ActionLogInt)(nil), } @@ -3243,7 +13739,7 @@ func file_pb_ayrshare_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pb_ayrshare_proto_rawDesc, NumEnums: 0, - NumMessages: 23, + NumMessages: 109, NumExtensions: 0, NumServices: 1, }, diff --git a/api/aryshare/ayrshare.validator.pb.go b/api/aryshare/ayrshare.validator.pb.go index 6cc7e5a..7028841 100644 --- a/api/aryshare/ayrshare.validator.pb.go +++ b/api/aryshare/ayrshare.validator.pb.go @@ -6,11 +6,10 @@ package aryshare import ( fmt "fmt" math "math" - proto "github.com/golang/protobuf/proto" _ "github.com/mwitkow/go-proto-validators" - github_com_mwitkow_go_proto_validators "github.com/mwitkow/go-proto-validators" _ "google.golang.org/protobuf/types/descriptorpb" + github_com_mwitkow_go_proto_validators "github.com/mwitkow/go-proto-validators" ) // Reference imports to suppress errors if they are not otherwise used. @@ -34,6 +33,12 @@ func (this *InstagramOptions) Validate() error { func (this *TikTokOptions) Validate() error { return nil } +func (this *YouTubeOptions) Validate() error { + return nil +} +func (this *BlueskyOptions) Validate() error { + return nil +} func (this *PostRequest) Validate() error { if this.Post == "" { return github_com_mwitkow_go_proto_validators.FieldError("Post", fmt.Errorf(`post内容不能为空`)) @@ -41,6 +46,11 @@ func (this *PostRequest) Validate() error { if len(this.Platforms) < 1 { return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) } + for _, item := range this.Platforms { + if item == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) + } + } if this.InstagramOptions != nil { if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.InstagramOptions); err != nil { return github_com_mwitkow_go_proto_validators.FieldError("InstagramOptions", err) @@ -51,6 +61,16 @@ func (this *PostRequest) Validate() error { return github_com_mwitkow_go_proto_validators.FieldError("TikTokOptions", err) } } + if this.YouTubeOptions != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.YouTubeOptions); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("YouTubeOptions", err) + } + } + if this.BlueskyOptions != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.BlueskyOptions); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("BlueskyOptions", err) + } + } return nil } func (this *PostId) Validate() error { @@ -173,12 +193,6 @@ func (this *Email) Validate() error { return nil } func (this *GenerateJWTRequest) Validate() error { - if this.Domain == "" { - return github_com_mwitkow_go_proto_validators.FieldError("Domain", fmt.Errorf(`domain不能为空`)) - } - if this.PrivateKey == "" { - return github_com_mwitkow_go_proto_validators.FieldError("PrivateKey", fmt.Errorf(`privateKey不能为空`)) - } if this.ProfileKey == "" { return github_com_mwitkow_go_proto_validators.FieldError("ProfileKey", fmt.Errorf(`profileKey不能为空`)) } @@ -192,3 +206,711 @@ func (this *GenerateJWTRequest) Validate() error { func (this *GenerateJWTResponse) Validate() error { return nil } +func (this *HistoryPostId) Validate() error { + return nil +} +func (this *HistoryItem) Validate() error { + for _, item := range this.PostIds { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("PostIds", err) + } + } + } + if this.ScheduleDate != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.ScheduleDate); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("ScheduleDate", err) + } + } + return nil +} +func (this *GetHistoryRequest) Validate() error { + return nil +} +func (this *GetHistoryResponse) Validate() error { + for _, item := range this.History { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("History", err) + } + } + } + return nil +} +func (this *GetHistoryByIdRequest) Validate() error { + if this.Id == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Id", fmt.Errorf(`帖子ID不能为空`)) + } + return nil +} +func (this *GetHistoryByIdResponse) Validate() error { + for _, item := range this.PostIds { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("PostIds", err) + } + } + } + if this.ScheduleDate != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.ScheduleDate); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("ScheduleDate", err) + } + } + return nil +} +func (this *PlatformPost) Validate() error { + return nil +} +func (this *GetHistoryByPlatformRequest) Validate() error { + if this.Platform == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Platform", fmt.Errorf(`平台名称不能为空`)) + } + return nil +} +func (this *GetHistoryByPlatformResponse) Validate() error { + for _, item := range this.Posts { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Posts", err) + } + } + } + return nil +} +func (this *SendMessageRequest) Validate() error { + if this.Platform == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Platform", fmt.Errorf(`平台不能为空`)) + } + if this.RecipientId == "" { + return github_com_mwitkow_go_proto_validators.FieldError("RecipientId", fmt.Errorf(`接收者ID不能为空`)) + } + return nil +} +func (this *MessageItem) Validate() error { + return nil +} +func (this *SendMessageResponse) Validate() error { + for _, item := range this.Messages { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Messages", err) + } + } + } + return nil +} +func (this *GetMessagesRequest) Validate() error { + if this.Platform == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Platform", fmt.Errorf(`平台不能为空`)) + } + return nil +} +func (this *MessageAttachment) Validate() error { + return nil +} +func (this *MessageSenderDetails) Validate() error { + return nil +} +func (this *MessageRecipientDetails) Validate() error { + return nil +} +func (this *MessageReaction) Validate() error { + return nil +} +func (this *GetMessagesItem) Validate() error { + if this.SenderDetails != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.SenderDetails); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("SenderDetails", err) + } + } + if this.RecipientDetails != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.RecipientDetails); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("RecipientDetails", err) + } + } + for _, item := range this.Attachments { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Attachments", err) + } + } + } + for _, item := range this.Reactions { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Reactions", err) + } + } + } + return nil +} +func (this *ConversationParticipant) Validate() error { + return nil +} +func (this *ConversationDetail) Validate() error { + if this.Participant != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Participant); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Participant", err) + } + } + return nil +} +func (this *GetMessagesResponse) Validate() error { + for _, item := range this.Messages { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Messages", err) + } + } + } + for _, item := range this.ConversationsDetails { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("ConversationsDetails", err) + } + } + } + return nil +} +func (this *PostCommentRequest) Validate() error { + if this.Id == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Id", fmt.Errorf(`id不能为空`)) + } + if this.Comment == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Comment", fmt.Errorf(`comment不能为空`)) + } + if len(this.Platforms) < 1 { + return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) + } + for _, item := range this.Platforms { + if item == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) + } + } + return nil +} +func (this *InstagramCommentResponse) Validate() error { + return nil +} +func (this *TikTokCommentResponse) Validate() error { + return nil +} +func (this *BlueskyCommentResponse) Validate() error { + return nil +} +func (this *FacebookCommentResponse) Validate() error { + return nil +} +func (this *LinkedInCommentResponse) Validate() error { + return nil +} +func (this *TwitterCommentResponse) Validate() error { + return nil +} +func (this *YouTubeCommentResponse) Validate() error { + return nil +} +func (this *PlatformError) Validate() error { + return nil +} +func (this *PostCommentResponse) Validate() error { + if this.Instagram != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Instagram); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Instagram", err) + } + } + if this.Tiktok != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Tiktok); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Tiktok", err) + } + } + for _, item := range this.Errors { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Errors", err) + } + } + } + if this.Bluesky != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Bluesky); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Bluesky", err) + } + } + if this.Facebook != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Facebook); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Facebook", err) + } + } + if this.Linkedin != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Linkedin); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Linkedin", err) + } + } + if this.Twitter != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Twitter); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Twitter", err) + } + } + if this.Youtube != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Youtube); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Youtube", err) + } + } + return nil +} +func (this *GetCommentRequest) Validate() error { + if this.Id == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Id", fmt.Errorf(`id不能为空`)) + } + return nil +} +func (this *InstagramUser) Validate() error { + return nil +} +func (this *InstagramUserInfo) Validate() error { + return nil +} +func (this *InstagramComment) Validate() error { + if this.From != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.From); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("From", err) + } + } + for _, item := range this.Replies { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Replies", err) + } + } + } + if this.User != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.User); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("User", err) + } + } + return nil +} +func (this *TikTokComment) Validate() error { + for _, item := range this.Replies { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Replies", err) + } + } + } + return nil +} +func (this *BlueskyComment) Validate() error { + for _, item := range this.Replies { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Replies", err) + } + } + } + return nil +} +func (this *FacebookUser) Validate() error { + return nil +} +func (this *FacebookParent) Validate() error { + if this.From != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.From); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("From", err) + } + } + return nil +} +func (this *FacebookComment) Validate() error { + if this.From != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.From); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("From", err) + } + } + if this.Parent != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Parent); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Parent", err) + } + } + for _, item := range this.Replies { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Replies", err) + } + } + } + return nil +} +func (this *LinkedInMedia) Validate() error { + return nil +} +func (this *LinkedInFrom) Validate() error { + return nil +} +func (this *LinkedInComment) Validate() error { + if this.From != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.From); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("From", err) + } + } + for _, item := range this.Media { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Media", err) + } + } + } + return nil +} +func (this *RedditUser) Validate() error { + return nil +} +func (this *RedditComment) Validate() error { + if this.From != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.From); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("From", err) + } + } + return nil +} +func (this *ThreadsComment) Validate() error { + for _, item := range this.Replies { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Replies", err) + } + } + } + return nil +} +func (this *TwitterPublicMetrics) Validate() error { + return nil +} +func (this *TwitterReferencedTweet) Validate() error { + return nil +} +func (this *TwitterReplyTo) Validate() error { + if this.PublicMetrics != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.PublicMetrics); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("PublicMetrics", err) + } + } + return nil +} +func (this *TwitterComment) Validate() error { + if this.PublicMetrics != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.PublicMetrics); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("PublicMetrics", err) + } + } + for _, item := range this.ReferencedTweets { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("ReferencedTweets", err) + } + } + } + if this.ReplyTo != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.ReplyTo); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("ReplyTo", err) + } + } + return nil +} +func (this *YouTubeReply) Validate() error { + return nil +} +func (this *YouTubeComment) Validate() error { + for _, item := range this.Replies { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Replies", err) + } + } + } + return nil +} +func (this *GetCommentResponse) Validate() error { + for _, item := range this.Instagram { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Instagram", err) + } + } + } + for _, item := range this.Tiktok { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Tiktok", err) + } + } + } + for _, item := range this.Bluesky { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Bluesky", err) + } + } + } + for _, item := range this.Facebook { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Facebook", err) + } + } + } + for _, item := range this.Linkedin { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Linkedin", err) + } + } + } + for _, item := range this.Reddit { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Reddit", err) + } + } + } + for _, item := range this.Threads { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Threads", err) + } + } + } + for _, item := range this.Twitter { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Twitter", err) + } + } + } + for _, item := range this.Youtube { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Youtube", err) + } + } + } + return nil +} +func (this *DeleteCommentRequest) Validate() error { + if this.Id == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Id", fmt.Errorf(`id不能为空`)) + } + return nil +} +func (this *InstagramDeleteResponse) Validate() error { + return nil +} +func (this *TikTokDeleteResponse) Validate() error { + return nil +} +func (this *DeleteCommentResponse) Validate() error { + return nil +} +func (this *ReplyCommentRequest) Validate() error { + if this.Id == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Id", fmt.Errorf(`id不能为空`)) + } + if this.Comment == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Comment", fmt.Errorf(`comment不能为空`)) + } + if len(this.Platforms) < 1 { + return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) + } + for _, item := range this.Platforms { + if item == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) + } + } + return nil +} +func (this *InstagramReplyResponse) Validate() error { + return nil +} +func (this *TikTokReplyResponse) Validate() error { + return nil +} +func (this *BlueskyReplyResponse) Validate() error { + return nil +} +func (this *FacebookReplyResponse) Validate() error { + return nil +} +func (this *LinkedInReplyResponse) Validate() error { + return nil +} +func (this *TwitterReplyResponse) Validate() error { + return nil +} +func (this *YouTubeReplyResponse) Validate() error { + return nil +} +func (this *ReplyCommentResponse) Validate() error { + if this.Instagram != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Instagram); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Instagram", err) + } + } + if this.Tiktok != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Tiktok); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Tiktok", err) + } + } + if this.Bluesky != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Bluesky); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Bluesky", err) + } + } + if this.Facebook != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Facebook); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Facebook", err) + } + } + if this.Linkedin != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Linkedin); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Linkedin", err) + } + } + if this.Twitter != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Twitter); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Twitter", err) + } + } + if this.Youtube != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Youtube); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Youtube", err) + } + } + return nil +} +func (this *GetPostAnalyticsRequest) Validate() error { + if this.Id == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Id", fmt.Errorf(`帖子ID不能为空`)) + } + if len(this.Platforms) < 1 { + return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) + } + for _, item := range this.Platforms { + if item == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) + } + } + return nil +} +func (this *GetPostAnalyticsBySocialIDRequest) Validate() error { + if this.Id == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Id", fmt.Errorf(`Social Post ID不能为空`)) + } + if len(this.Platforms) < 1 { + return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) + } + for _, item := range this.Platforms { + if item == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) + } + } + return nil +} +func (this *GetPostAnalyticsResponse) Validate() error { + return nil +} +func (this *GetSocialAnalyticsRequest) Validate() error { + if len(this.Platforms) < 1 { + return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) + } + for _, item := range this.Platforms { + if item == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Platforms", fmt.Errorf(`platforms平台列表不能为空`)) + } + } + return nil +} +func (this *GetSocialAnalyticsResponse) Validate() error { + return nil +} +func (this *AutoHashtagsRequest) Validate() error { + if this.Post == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Post", fmt.Errorf(`post内容不能为空`)) + } + return nil +} +func (this *AutoHashtagsResponse) Validate() error { + return nil +} +func (this *CheckBannedHashtagRequest) Validate() error { + if this.Hashtag == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Hashtag", fmt.Errorf(`hashtag不能为空`)) + } + return nil +} +func (this *CheckBannedHashtagResponse) Validate() error { + return nil +} +func (this *HashtagRecommendation) Validate() error { + return nil +} +func (this *RecommendHashtagsRequest) Validate() error { + if this.Keyword == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Keyword", fmt.Errorf(`keyword不能为空`)) + } + return nil +} +func (this *RecommendHashtagsResponse) Validate() error { + for _, item := range this.Recommendations { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Recommendations", err) + } + } + } + return nil +} +func (this *SearchHashtagsRequest) Validate() error { + if this.Keyword == "" { + return github_com_mwitkow_go_proto_validators.FieldError("Keyword", fmt.Errorf(`keyword不能为空`)) + } + return nil +} +func (this *SearchHashtagInfo) Validate() error { + return nil +} +func (this *SearchHashtagChild) Validate() error { + return nil +} +func (this *SearchHashtagChildren) Validate() error { + for _, item := range this.Data { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Data", err) + } + } + } + return nil +} +func (this *SearchHashtagMedia) Validate() error { + if this.Children != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Children); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Children", err) + } + } + return nil +} +func (this *SearchHashtagsResponse) Validate() error { + if this.Hashtag != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Hashtag); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Hashtag", err) + } + } + for _, item := range this.SearchResults { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("SearchResults", err) + } + } + } + return nil +} diff --git a/api/aryshare/ayrshare_triple.pb.go b/api/aryshare/ayrshare_triple.pb.go index 456bf96..6c186f4 100644 --- a/api/aryshare/ayrshare_triple.pb.go +++ b/api/aryshare/ayrshare_triple.pb.go @@ -37,6 +37,27 @@ type AyrshareClient interface { CreateProfile(ctx context.Context, in *CreateProfileRequest, opts ...grpc_go.CallOption) (*CreateProfileResponse, common.ErrorWithAttachment) GetProfiles(ctx context.Context, in *GetProfilesRequest, opts ...grpc_go.CallOption) (*GetProfilesResponse, common.ErrorWithAttachment) GenerateJWT(ctx context.Context, in *GenerateJWTRequest, opts ...grpc_go.CallOption) (*GenerateJWTResponse, common.ErrorWithAttachment) + // 历史记录相关 api + GetHistory(ctx context.Context, in *GetHistoryRequest, opts ...grpc_go.CallOption) (*GetHistoryResponse, common.ErrorWithAttachment) + GetHistoryById(ctx context.Context, in *GetHistoryByIdRequest, opts ...grpc_go.CallOption) (*GetHistoryByIdResponse, common.ErrorWithAttachment) + GetHistoryByPlatform(ctx context.Context, in *GetHistoryByPlatformRequest, opts ...grpc_go.CallOption) (*GetHistoryByPlatformResponse, common.ErrorWithAttachment) + // 消息相关 api + SendMessage(ctx context.Context, in *SendMessageRequest, opts ...grpc_go.CallOption) (*SendMessageResponse, common.ErrorWithAttachment) + GetMessages(ctx context.Context, in *GetMessagesRequest, opts ...grpc_go.CallOption) (*GetMessagesResponse, common.ErrorWithAttachment) + // 评论相关 api + PostComment(ctx context.Context, in *PostCommentRequest, opts ...grpc_go.CallOption) (*PostCommentResponse, common.ErrorWithAttachment) + GetComment(ctx context.Context, in *GetCommentRequest, opts ...grpc_go.CallOption) (*GetCommentResponse, common.ErrorWithAttachment) + DeleteComment(ctx context.Context, in *DeleteCommentRequest, opts ...grpc_go.CallOption) (*DeleteCommentResponse, common.ErrorWithAttachment) + ReplyComment(ctx context.Context, in *ReplyCommentRequest, opts ...grpc_go.CallOption) (*ReplyCommentResponse, common.ErrorWithAttachment) + // 分析相关 api + GetPostAnalytics(ctx context.Context, in *GetPostAnalyticsRequest, opts ...grpc_go.CallOption) (*GetPostAnalyticsResponse, common.ErrorWithAttachment) + GetPostAnalyticsBySocialID(ctx context.Context, in *GetPostAnalyticsBySocialIDRequest, opts ...grpc_go.CallOption) (*GetPostAnalyticsResponse, common.ErrorWithAttachment) + GetSocialAnalytics(ctx context.Context, in *GetSocialAnalyticsRequest, opts ...grpc_go.CallOption) (*GetSocialAnalyticsResponse, common.ErrorWithAttachment) + // Hashtags 相关 api + AutoHashtags(ctx context.Context, in *AutoHashtagsRequest, opts ...grpc_go.CallOption) (*AutoHashtagsResponse, common.ErrorWithAttachment) + CheckBannedHashtag(ctx context.Context, in *CheckBannedHashtagRequest, opts ...grpc_go.CallOption) (*CheckBannedHashtagResponse, common.ErrorWithAttachment) + RecommendHashtags(ctx context.Context, in *RecommendHashtagsRequest, opts ...grpc_go.CallOption) (*RecommendHashtagsResponse, common.ErrorWithAttachment) + SearchHashtags(ctx context.Context, in *SearchHashtagsRequest, opts ...grpc_go.CallOption) (*SearchHashtagsResponse, common.ErrorWithAttachment) } type ayrshareClient struct { @@ -44,12 +65,28 @@ type ayrshareClient struct { } type AyrshareClientImpl struct { - Post func(ctx context.Context, in *PostRequest) (*PostResponse, error) - GetPost func(ctx context.Context, in *GetPostRequest) (*GetPostResponse, error) - GetUser func(ctx context.Context, in *GetUserRequest) (*GetUserResponse, error) - CreateProfile func(ctx context.Context, in *CreateProfileRequest) (*CreateProfileResponse, error) - GetProfiles func(ctx context.Context, in *GetProfilesRequest) (*GetProfilesResponse, error) - GenerateJWT func(ctx context.Context, in *GenerateJWTRequest) (*GenerateJWTResponse, error) + Post func(ctx context.Context, in *PostRequest) (*PostResponse, error) + GetPost func(ctx context.Context, in *GetPostRequest) (*GetPostResponse, error) + GetUser func(ctx context.Context, in *GetUserRequest) (*GetUserResponse, error) + CreateProfile func(ctx context.Context, in *CreateProfileRequest) (*CreateProfileResponse, error) + GetProfiles func(ctx context.Context, in *GetProfilesRequest) (*GetProfilesResponse, error) + GenerateJWT func(ctx context.Context, in *GenerateJWTRequest) (*GenerateJWTResponse, error) + GetHistory func(ctx context.Context, in *GetHistoryRequest) (*GetHistoryResponse, error) + GetHistoryById func(ctx context.Context, in *GetHistoryByIdRequest) (*GetHistoryByIdResponse, error) + GetHistoryByPlatform func(ctx context.Context, in *GetHistoryByPlatformRequest) (*GetHistoryByPlatformResponse, error) + SendMessage func(ctx context.Context, in *SendMessageRequest) (*SendMessageResponse, error) + GetMessages func(ctx context.Context, in *GetMessagesRequest) (*GetMessagesResponse, error) + PostComment func(ctx context.Context, in *PostCommentRequest) (*PostCommentResponse, error) + GetComment func(ctx context.Context, in *GetCommentRequest) (*GetCommentResponse, error) + DeleteComment func(ctx context.Context, in *DeleteCommentRequest) (*DeleteCommentResponse, error) + ReplyComment func(ctx context.Context, in *ReplyCommentRequest) (*ReplyCommentResponse, error) + GetPostAnalytics func(ctx context.Context, in *GetPostAnalyticsRequest) (*GetPostAnalyticsResponse, error) + GetPostAnalyticsBySocialID func(ctx context.Context, in *GetPostAnalyticsBySocialIDRequest) (*GetPostAnalyticsResponse, error) + GetSocialAnalytics func(ctx context.Context, in *GetSocialAnalyticsRequest) (*GetSocialAnalyticsResponse, error) + AutoHashtags func(ctx context.Context, in *AutoHashtagsRequest) (*AutoHashtagsResponse, error) + CheckBannedHashtag func(ctx context.Context, in *CheckBannedHashtagRequest) (*CheckBannedHashtagResponse, error) + RecommendHashtags func(ctx context.Context, in *RecommendHashtagsRequest) (*RecommendHashtagsResponse, error) + SearchHashtags func(ctx context.Context, in *SearchHashtagsRequest) (*SearchHashtagsResponse, error) } func (c *AyrshareClientImpl) GetDubboStub(cc *triple.TripleConn) AyrshareClient { @@ -100,6 +137,102 @@ func (c *ayrshareClient) GenerateJWT(ctx context.Context, in *GenerateJWTRequest return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GenerateJWT", in, out) } +func (c *ayrshareClient) GetHistory(ctx context.Context, in *GetHistoryRequest, opts ...grpc_go.CallOption) (*GetHistoryResponse, common.ErrorWithAttachment) { + out := new(GetHistoryResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetHistory", in, out) +} + +func (c *ayrshareClient) GetHistoryById(ctx context.Context, in *GetHistoryByIdRequest, opts ...grpc_go.CallOption) (*GetHistoryByIdResponse, common.ErrorWithAttachment) { + out := new(GetHistoryByIdResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetHistoryById", in, out) +} + +func (c *ayrshareClient) GetHistoryByPlatform(ctx context.Context, in *GetHistoryByPlatformRequest, opts ...grpc_go.CallOption) (*GetHistoryByPlatformResponse, common.ErrorWithAttachment) { + out := new(GetHistoryByPlatformResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetHistoryByPlatform", in, out) +} + +func (c *ayrshareClient) SendMessage(ctx context.Context, in *SendMessageRequest, opts ...grpc_go.CallOption) (*SendMessageResponse, common.ErrorWithAttachment) { + out := new(SendMessageResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/SendMessage", in, out) +} + +func (c *ayrshareClient) GetMessages(ctx context.Context, in *GetMessagesRequest, opts ...grpc_go.CallOption) (*GetMessagesResponse, common.ErrorWithAttachment) { + out := new(GetMessagesResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetMessages", in, out) +} + +func (c *ayrshareClient) PostComment(ctx context.Context, in *PostCommentRequest, opts ...grpc_go.CallOption) (*PostCommentResponse, common.ErrorWithAttachment) { + out := new(PostCommentResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/PostComment", in, out) +} + +func (c *ayrshareClient) GetComment(ctx context.Context, in *GetCommentRequest, opts ...grpc_go.CallOption) (*GetCommentResponse, common.ErrorWithAttachment) { + out := new(GetCommentResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetComment", in, out) +} + +func (c *ayrshareClient) DeleteComment(ctx context.Context, in *DeleteCommentRequest, opts ...grpc_go.CallOption) (*DeleteCommentResponse, common.ErrorWithAttachment) { + out := new(DeleteCommentResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/DeleteComment", in, out) +} + +func (c *ayrshareClient) ReplyComment(ctx context.Context, in *ReplyCommentRequest, opts ...grpc_go.CallOption) (*ReplyCommentResponse, common.ErrorWithAttachment) { + out := new(ReplyCommentResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/ReplyComment", in, out) +} + +func (c *ayrshareClient) GetPostAnalytics(ctx context.Context, in *GetPostAnalyticsRequest, opts ...grpc_go.CallOption) (*GetPostAnalyticsResponse, common.ErrorWithAttachment) { + out := new(GetPostAnalyticsResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetPostAnalytics", in, out) +} + +func (c *ayrshareClient) GetPostAnalyticsBySocialID(ctx context.Context, in *GetPostAnalyticsBySocialIDRequest, opts ...grpc_go.CallOption) (*GetPostAnalyticsResponse, common.ErrorWithAttachment) { + out := new(GetPostAnalyticsResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetPostAnalyticsBySocialID", in, out) +} + +func (c *ayrshareClient) GetSocialAnalytics(ctx context.Context, in *GetSocialAnalyticsRequest, opts ...grpc_go.CallOption) (*GetSocialAnalyticsResponse, common.ErrorWithAttachment) { + out := new(GetSocialAnalyticsResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetSocialAnalytics", in, out) +} + +func (c *ayrshareClient) AutoHashtags(ctx context.Context, in *AutoHashtagsRequest, opts ...grpc_go.CallOption) (*AutoHashtagsResponse, common.ErrorWithAttachment) { + out := new(AutoHashtagsResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/AutoHashtags", in, out) +} + +func (c *ayrshareClient) CheckBannedHashtag(ctx context.Context, in *CheckBannedHashtagRequest, opts ...grpc_go.CallOption) (*CheckBannedHashtagResponse, common.ErrorWithAttachment) { + out := new(CheckBannedHashtagResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/CheckBannedHashtag", in, out) +} + +func (c *ayrshareClient) RecommendHashtags(ctx context.Context, in *RecommendHashtagsRequest, opts ...grpc_go.CallOption) (*RecommendHashtagsResponse, common.ErrorWithAttachment) { + out := new(RecommendHashtagsResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/RecommendHashtags", in, out) +} + +func (c *ayrshareClient) SearchHashtags(ctx context.Context, in *SearchHashtagsRequest, opts ...grpc_go.CallOption) (*SearchHashtagsResponse, common.ErrorWithAttachment) { + out := new(SearchHashtagsResponse) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/SearchHashtags", in, out) +} + // AyrshareServer is the server API for Ayrshare service. // All implementations must embed UnimplementedAyrshareServer // for forward compatibility @@ -113,6 +246,27 @@ type AyrshareServer interface { CreateProfile(context.Context, *CreateProfileRequest) (*CreateProfileResponse, error) GetProfiles(context.Context, *GetProfilesRequest) (*GetProfilesResponse, error) GenerateJWT(context.Context, *GenerateJWTRequest) (*GenerateJWTResponse, error) + // 历史记录相关 api + GetHistory(context.Context, *GetHistoryRequest) (*GetHistoryResponse, error) + GetHistoryById(context.Context, *GetHistoryByIdRequest) (*GetHistoryByIdResponse, error) + GetHistoryByPlatform(context.Context, *GetHistoryByPlatformRequest) (*GetHistoryByPlatformResponse, error) + // 消息相关 api + SendMessage(context.Context, *SendMessageRequest) (*SendMessageResponse, error) + GetMessages(context.Context, *GetMessagesRequest) (*GetMessagesResponse, error) + // 评论相关 api + PostComment(context.Context, *PostCommentRequest) (*PostCommentResponse, error) + GetComment(context.Context, *GetCommentRequest) (*GetCommentResponse, error) + DeleteComment(context.Context, *DeleteCommentRequest) (*DeleteCommentResponse, error) + ReplyComment(context.Context, *ReplyCommentRequest) (*ReplyCommentResponse, error) + // 分析相关 api + GetPostAnalytics(context.Context, *GetPostAnalyticsRequest) (*GetPostAnalyticsResponse, error) + GetPostAnalyticsBySocialID(context.Context, *GetPostAnalyticsBySocialIDRequest) (*GetPostAnalyticsResponse, error) + GetSocialAnalytics(context.Context, *GetSocialAnalyticsRequest) (*GetSocialAnalyticsResponse, error) + // Hashtags 相关 api + AutoHashtags(context.Context, *AutoHashtagsRequest) (*AutoHashtagsResponse, error) + CheckBannedHashtag(context.Context, *CheckBannedHashtagRequest) (*CheckBannedHashtagResponse, error) + RecommendHashtags(context.Context, *RecommendHashtagsRequest) (*RecommendHashtagsResponse, error) + SearchHashtags(context.Context, *SearchHashtagsRequest) (*SearchHashtagsResponse, error) mustEmbedUnimplementedAyrshareServer() } @@ -139,6 +293,54 @@ func (UnimplementedAyrshareServer) GetProfiles(context.Context, *GetProfilesRequ func (UnimplementedAyrshareServer) GenerateJWT(context.Context, *GenerateJWTRequest) (*GenerateJWTResponse, error) { return nil, status.Errorf(codes.Unimplemented, "method GenerateJWT not implemented") } +func (UnimplementedAyrshareServer) GetHistory(context.Context, *GetHistoryRequest) (*GetHistoryResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetHistory not implemented") +} +func (UnimplementedAyrshareServer) GetHistoryById(context.Context, *GetHistoryByIdRequest) (*GetHistoryByIdResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetHistoryById not implemented") +} +func (UnimplementedAyrshareServer) GetHistoryByPlatform(context.Context, *GetHistoryByPlatformRequest) (*GetHistoryByPlatformResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetHistoryByPlatform not implemented") +} +func (UnimplementedAyrshareServer) SendMessage(context.Context, *SendMessageRequest) (*SendMessageResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SendMessage not implemented") +} +func (UnimplementedAyrshareServer) GetMessages(context.Context, *GetMessagesRequest) (*GetMessagesResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetMessages not implemented") +} +func (UnimplementedAyrshareServer) PostComment(context.Context, *PostCommentRequest) (*PostCommentResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method PostComment not implemented") +} +func (UnimplementedAyrshareServer) GetComment(context.Context, *GetCommentRequest) (*GetCommentResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetComment not implemented") +} +func (UnimplementedAyrshareServer) DeleteComment(context.Context, *DeleteCommentRequest) (*DeleteCommentResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteComment not implemented") +} +func (UnimplementedAyrshareServer) ReplyComment(context.Context, *ReplyCommentRequest) (*ReplyCommentResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReplyComment not implemented") +} +func (UnimplementedAyrshareServer) GetPostAnalytics(context.Context, *GetPostAnalyticsRequest) (*GetPostAnalyticsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetPostAnalytics not implemented") +} +func (UnimplementedAyrshareServer) GetPostAnalyticsBySocialID(context.Context, *GetPostAnalyticsBySocialIDRequest) (*GetPostAnalyticsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetPostAnalyticsBySocialID not implemented") +} +func (UnimplementedAyrshareServer) GetSocialAnalytics(context.Context, *GetSocialAnalyticsRequest) (*GetSocialAnalyticsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetSocialAnalytics not implemented") +} +func (UnimplementedAyrshareServer) AutoHashtags(context.Context, *AutoHashtagsRequest) (*AutoHashtagsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method AutoHashtags not implemented") +} +func (UnimplementedAyrshareServer) CheckBannedHashtag(context.Context, *CheckBannedHashtagRequest) (*CheckBannedHashtagResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CheckBannedHashtag not implemented") +} +func (UnimplementedAyrshareServer) RecommendHashtags(context.Context, *RecommendHashtagsRequest) (*RecommendHashtagsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method RecommendHashtags not implemented") +} +func (UnimplementedAyrshareServer) SearchHashtags(context.Context, *SearchHashtagsRequest) (*SearchHashtagsResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method SearchHashtags not implemented") +} func (s *UnimplementedAyrshareServer) XXX_SetProxyImpl(impl protocol.Invoker) { s.proxyImpl = impl } @@ -341,6 +543,470 @@ func _Ayrshare_GenerateJWT_Handler(srv interface{}, ctx context.Context, dec fun return interceptor(ctx, in, info, handler) } +func _Ayrshare_GetHistory_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(GetHistoryRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("GetHistory", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_GetHistoryById_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(GetHistoryByIdRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("GetHistoryById", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_GetHistoryByPlatform_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(GetHistoryByPlatformRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("GetHistoryByPlatform", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_SendMessage_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(SendMessageRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("SendMessage", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_GetMessages_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(GetMessagesRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("GetMessages", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_PostComment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(PostCommentRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("PostComment", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_GetComment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(GetCommentRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("GetComment", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_DeleteComment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteCommentRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("DeleteComment", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_ReplyComment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(ReplyCommentRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("ReplyComment", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_GetPostAnalytics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(GetPostAnalyticsRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("GetPostAnalytics", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_GetPostAnalyticsBySocialID_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(GetPostAnalyticsBySocialIDRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("GetPostAnalyticsBySocialID", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_GetSocialAnalytics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(GetSocialAnalyticsRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("GetSocialAnalytics", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_AutoHashtags_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(AutoHashtagsRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("AutoHashtags", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_CheckBannedHashtag_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(CheckBannedHashtagRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("CheckBannedHashtag", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_RecommendHashtags_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(RecommendHashtagsRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("RecommendHashtags", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Ayrshare_SearchHashtags_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(SearchHashtagsRequest) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("SearchHashtags", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + // Ayrshare_ServiceDesc is the grpc_go.ServiceDesc for Ayrshare service. // It's only intended for direct use with grpc_go.RegisterService, // and not to be introspected or modified (even as a copy) @@ -372,6 +1038,70 @@ var Ayrshare_ServiceDesc = grpc_go.ServiceDesc{ MethodName: "GenerateJWT", Handler: _Ayrshare_GenerateJWT_Handler, }, + { + MethodName: "GetHistory", + Handler: _Ayrshare_GetHistory_Handler, + }, + { + MethodName: "GetHistoryById", + Handler: _Ayrshare_GetHistoryById_Handler, + }, + { + MethodName: "GetHistoryByPlatform", + Handler: _Ayrshare_GetHistoryByPlatform_Handler, + }, + { + MethodName: "SendMessage", + Handler: _Ayrshare_SendMessage_Handler, + }, + { + MethodName: "GetMessages", + Handler: _Ayrshare_GetMessages_Handler, + }, + { + MethodName: "PostComment", + Handler: _Ayrshare_PostComment_Handler, + }, + { + MethodName: "GetComment", + Handler: _Ayrshare_GetComment_Handler, + }, + { + MethodName: "DeleteComment", + Handler: _Ayrshare_DeleteComment_Handler, + }, + { + MethodName: "ReplyComment", + Handler: _Ayrshare_ReplyComment_Handler, + }, + { + MethodName: "GetPostAnalytics", + Handler: _Ayrshare_GetPostAnalytics_Handler, + }, + { + MethodName: "GetPostAnalyticsBySocialID", + Handler: _Ayrshare_GetPostAnalyticsBySocialID_Handler, + }, + { + MethodName: "GetSocialAnalytics", + Handler: _Ayrshare_GetSocialAnalytics_Handler, + }, + { + MethodName: "AutoHashtags", + Handler: _Ayrshare_AutoHashtags_Handler, + }, + { + MethodName: "CheckBannedHashtag", + Handler: _Ayrshare_CheckBannedHashtag_Handler, + }, + { + MethodName: "RecommendHashtags", + Handler: _Ayrshare_RecommendHashtags_Handler, + }, + { + MethodName: "SearchHashtags", + Handler: _Ayrshare_SearchHashtags_Handler, + }, }, Streams: []grpc_go.StreamDesc{}, Metadata: "pb/ayrshare.proto", diff --git a/pkg/model/cast/media.go b/pkg/model/cast/media.go index 1d762c5..b73c16f 100644 --- a/pkg/model/cast/media.go +++ b/pkg/model/cast/media.go @@ -16,14 +16,18 @@ const ( var PlatformNameKv = map[uint32]string{ 1: "tiktok", + 2: "youtube", 3: "instagram", 4: "DM", + 5: "bluesky", } var NamePlatformIDKv = map[string]uint32{ "tiktok": 1, + "youtube": 2, "instagram": 3, "DM": 4, + "bluesky": 5, } var PlatformIDStrKv = map[string]uint8{ "TIKTOK": 1, diff --git a/pkg/service/cast/work.go b/pkg/service/cast/work.go index 3f5abba..fd871ea 100644 --- a/pkg/service/cast/work.go +++ b/pkg/service/cast/work.go @@ -440,6 +440,22 @@ func PostAS(workUuids []string) (errs []error) { ThumbNail: "", Visibility: "", } + case cast.PlatformIDENUM_YOUTUBE: + postReq.YouTubeOptions = &aryshare.YouTubeOptions{ + Title: workDetail.Title, + Privacy: "public", + ThumbNail: coverUrl, + Tags: nil, + NotifySubscribers: true, + } + case cast.PlatformIDENUM(5): // BLUESKY + postReq.BlueskyOptions = &aryshare.BlueskyOptions{ + Labels: nil, + Langs: []string{"en"}, + QuotedPostUri: "", + ReplyToPostUri: "", + ReplyToPostCid: "", + } } zap.L().Info("Publish Ayrshare PostReq", zap.Any("workUuid", workDetail.WorkUuid), zap.Any("postReq", postReq), zap.Any("workDetail", workDetail)) postResp, _err = service.AyrshareProvider.Post(context.Background(), postReq) @@ -493,8 +509,12 @@ func PostAS(workUuids []string) (errs []error) { switch postInfo.Platform { case "tiktok": platformID = 1 + case "youtube": + platformID = 2 case "instagram": platformID = 3 + case "bluesky": + platformID = 5 } publishStatus := cast.PublishStatusENUM_PublishMediaStatus_NO if postInfo.Status == "success" { From c6ef17559d142d7325e2a9196b4d70c578e1b967 Mon Sep 17 00:00:00 2001 From: cjy Date: Fri, 19 Dec 2025 17:04:12 +0800 Subject: [PATCH 02/19] =?UTF-8?q?feat:=20=E5=A2=9E=E5=8A=A0youtube=20?= =?UTF-8?q?=E5=92=8C=20bulesky=20=E5=8F=91=E5=B8=83=E7=9A=84=E7=89=B9?= =?UTF-8?q?=E5=AE=9A=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/service/cast/work.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkg/service/cast/work.go b/pkg/service/cast/work.go index fd871ea..3db5f51 100644 --- a/pkg/service/cast/work.go +++ b/pkg/service/cast/work.go @@ -443,6 +443,9 @@ func PostAS(workUuids []string) (errs []error) { case cast.PlatformIDENUM_YOUTUBE: postReq.YouTubeOptions = &aryshare.YouTubeOptions{ Title: workDetail.Title, + Description: "", + CategoryId: "", + MadeForKids: false, Privacy: "public", ThumbNail: coverUrl, Tags: nil, @@ -450,8 +453,8 @@ func PostAS(workUuids []string) (errs []error) { } case cast.PlatformIDENUM(5): // BLUESKY postReq.BlueskyOptions = &aryshare.BlueskyOptions{ - Labels: nil, - Langs: []string{"en"}, + Labels: nil, + // Langs: []string{"en"}, QuotedPostUri: "", ReplyToPostUri: "", ReplyToPostCid: "", From dc286eb98f49f17a96547c9ca3306977c1bb5b8d Mon Sep 17 00:00:00 2001 From: cjy Date: Tue, 23 Dec 2025 10:23:14 +0800 Subject: [PATCH 03/19] =?UTF-8?q?=E6=9B=B4=E6=96=B0pb?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/cast/cast.pb.go | 10851 ++++++++++++++++++++++----------- api/cast/cast.pb.validate.go | 678 +- api/cast/cast_triple.pb.go | 47 +- 3 files changed, 7756 insertions(+), 3820 deletions(-) diff --git a/api/cast/cast.pb.go b/api/cast/cast.pb.go index 0ce65ab..196f9f4 100644 --- a/api/cast/cast.pb.go +++ b/api/cast/cast.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.7 -// protoc v6.32.0--rc2 +// protoc-gen-go v1.27.1 +// protoc v3.21.1 // source: pb/fiee/cast.proto package cast @@ -15,7 +15,6 @@ import ( _ "google.golang.org/protobuf/types/known/wrapperspb" reflect "reflect" sync "sync" - unsafe "unsafe" ) const ( @@ -33,6 +32,7 @@ const ( PlatformIDENUM_YOUTUBE PlatformIDENUM = 2 PlatformIDENUM_INS PlatformIDENUM = 3 PlatformIDENUM_DM PlatformIDENUM = 4 + PlatformIDENUM_BULESKY PlatformIDENUM = 5 ) // Enum value maps for PlatformIDENUM. @@ -43,6 +43,7 @@ var ( 2: "YOUTUBE", 3: "INS", 4: "DM", + 5: "BULESKY", } PlatformIDENUM_value = map[string]int32{ "UNKNOWN": 0, @@ -50,6 +51,7 @@ var ( "YOUTUBE": 2, "INS": 3, "DM": 4, + "BULESKY": 5, } ) @@ -350,27 +352,31 @@ func (CategoryENUM) EnumDescriptor() ([]byte, []int) { } type MediaUserListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` - ManagerVal string `protobuf:"bytes,2,opt,name=managerVal,proto3" json:"managerVal"` - PlatformUserName string `protobuf:"bytes,3,opt,name=platformUserName,proto3" json:"platformUserName"` - PlatformID PlatformIDENUM `protobuf:"varint,4,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - Page int32 `protobuf:"varint,5,opt,name=page,proto3" json:"page"` - PageSize int32 `protobuf:"varint,6,opt,name=pageSize,proto3" json:"pageSize"` - ArtistUuid string `protobuf:"bytes,7,opt,name=artistUuid,proto3" json:"artistUuid"` - CreateStartDate string `protobuf:"bytes,8,opt,name=createStartDate,proto3" json:"createStartDate"` - CreateEndDate string `protobuf:"bytes,9,opt,name=createEndDate,proto3" json:"createEndDate"` - AuthStatus AuthStatusENUM `protobuf:"varint,10,opt,name=authStatus,proto3,enum=Cast.AuthStatusENUM" json:"authStatus"` - MediaUserID string `protobuf:"bytes,11,opt,name=mediaUserID,proto3" json:"mediaUserID"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` + ManagerVal string `protobuf:"bytes,2,opt,name=managerVal,proto3" json:"managerVal"` + PlatformUserName string `protobuf:"bytes,3,opt,name=platformUserName,proto3" json:"platformUserName"` + PlatformID PlatformIDENUM `protobuf:"varint,4,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + Page int32 `protobuf:"varint,5,opt,name=page,proto3" json:"page"` + PageSize int32 `protobuf:"varint,6,opt,name=pageSize,proto3" json:"pageSize"` + ArtistUuid string `protobuf:"bytes,7,opt,name=artistUuid,proto3" json:"artistUuid"` + CreateStartDate string `protobuf:"bytes,8,opt,name=createStartDate,proto3" json:"createStartDate"` + CreateEndDate string `protobuf:"bytes,9,opt,name=createEndDate,proto3" json:"createEndDate"` + AuthStatus AuthStatusENUM `protobuf:"varint,10,opt,name=authStatus,proto3,enum=Cast.AuthStatusENUM" json:"authStatus"` + MediaUserID string `protobuf:"bytes,11,opt,name=mediaUserID,proto3" json:"mediaUserID"` + NeedStats bool `protobuf:"varint,12,opt,name=needStats,proto3" json:"needStats"` } func (x *MediaUserListReq) Reset() { *x = MediaUserListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaUserListReq) String() string { @@ -381,7 +387,7 @@ func (*MediaUserListReq) ProtoMessage() {} func (x *MediaUserListReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[0] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -473,27 +479,43 @@ func (x *MediaUserListReq) GetMediaUserID() string { return "" } +func (x *MediaUserListReq) GetNeedStats() bool { + if x != nil { + return x.NeedStats + } + return false +} + type MediaUserInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - PlatformUserName string `protobuf:"bytes,1,opt,name=platformUserName,proto3" json:"platformUserName"` - PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` - ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` - ArtistUuid string `protobuf:"bytes,5,opt,name=artistUuid,proto3" json:"artistUuid"` - ManagerUserName string `protobuf:"bytes,6,opt,name=managerUserName,proto3" json:"managerUserName"` - ManagerUuid string `protobuf:"bytes,7,opt,name=managerUuid,proto3" json:"managerUuid"` - MediaAccountUuid string `protobuf:"bytes,8,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - CreatedDate string `protobuf:"bytes,9,opt,name=createdDate,proto3" json:"createdDate"` - AuthStatus AuthStatusENUM `protobuf:"varint,10,opt,name=authStatus,proto3,enum=Cast.AuthStatusENUM" json:"authStatus"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlatformUserName string `protobuf:"bytes,1,opt,name=platformUserName,proto3" json:"platformUserName"` + PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` + ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` + ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` + ArtistUuid string `protobuf:"bytes,5,opt,name=artistUuid,proto3" json:"artistUuid"` + ManagerUserName string `protobuf:"bytes,6,opt,name=managerUserName,proto3" json:"managerUserName"` + ManagerUuid string `protobuf:"bytes,7,opt,name=managerUuid,proto3" json:"managerUuid"` + MediaAccountUuid string `protobuf:"bytes,8,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + CreatedDate string `protobuf:"bytes,9,opt,name=createdDate,proto3" json:"createdDate"` + AuthStatus AuthStatusENUM `protobuf:"varint,10,opt,name=authStatus,proto3,enum=Cast.AuthStatusENUM" json:"authStatus"` + PendingVideoCount int32 `protobuf:"varint,11,opt,name=pendingVideoCount,proto3" json:"pendingVideoCount"` + UploadedVideoCount int32 `protobuf:"varint,12,opt,name=uploadedVideoCount,proto3" json:"uploadedVideoCount"` + ReleasedVideoTotal int32 `protobuf:"varint,13,opt,name=releasedVideoTotal,proto3" json:"releasedVideoTotal"` + PendingPostCount int32 `protobuf:"varint,14,opt,name=pendingPostCount,proto3" json:"pendingPostCount"` + UploadedPostCount int32 `protobuf:"varint,15,opt,name=uploadedPostCount,proto3" json:"uploadedPostCount"` + ReleasedPostTotal int32 `protobuf:"varint,16,opt,name=releasedPostTotal,proto3" json:"releasedPostTotal"` } func (x *MediaUserInfo) Reset() { *x = MediaUserInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaUserInfo) String() string { @@ -504,7 +526,7 @@ func (*MediaUserInfo) ProtoMessage() {} func (x *MediaUserInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[1] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -589,19 +611,64 @@ func (x *MediaUserInfo) GetAuthStatus() AuthStatusENUM { return AuthStatusENUM_UNKNOWNAuth } +func (x *MediaUserInfo) GetPendingVideoCount() int32 { + if x != nil { + return x.PendingVideoCount + } + return 0 +} + +func (x *MediaUserInfo) GetUploadedVideoCount() int32 { + if x != nil { + return x.UploadedVideoCount + } + return 0 +} + +func (x *MediaUserInfo) GetReleasedVideoTotal() int32 { + if x != nil { + return x.ReleasedVideoTotal + } + return 0 +} + +func (x *MediaUserInfo) GetPendingPostCount() int32 { + if x != nil { + return x.PendingPostCount + } + return 0 +} + +func (x *MediaUserInfo) GetUploadedPostCount() int32 { + if x != nil { + return x.UploadedPostCount + } + return 0 +} + +func (x *MediaUserInfo) GetReleasedPostTotal() int32 { + if x != nil { + return x.ReleasedPostTotal + } + return 0 +} + type MediaUserListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*MediaUserInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*MediaUserInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` } func (x *MediaUserListResp) Reset() { *x = MediaUserListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaUserListResp) String() string { @@ -612,7 +679,7 @@ func (*MediaUserListResp) ProtoMessage() {} func (x *MediaUserListResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[2] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -642,26 +709,30 @@ func (x *MediaUserListResp) GetCount() int64 { } type UpdateMediaAccountReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PlatformID PlatformIDENUM `protobuf:"varint,1,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - PlatformUserName string `protobuf:"bytes,2,opt,name=platformUserName,proto3" json:"platformUserName"` - PlatformUserID string `protobuf:"bytes,3,opt,name=platformUserID,proto3" json:"platformUserID"` - ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` - ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` - ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` - MediaAccountUuid string `protobuf:"bytes,7,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - ManagerUuid string `protobuf:"bytes,8,opt,name=managerUuid,proto3" json:"managerUuid"` - ManagerUserName string `protobuf:"bytes,9,opt,name=managerUserName,proto3" json:"managerUserName"` - ArtistPhoneAreaCode string `protobuf:"bytes,10,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlatformID PlatformIDENUM `protobuf:"varint,1,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + PlatformUserName string `protobuf:"bytes,2,opt,name=platformUserName,proto3" json:"platformUserName"` + PlatformUserID string `protobuf:"bytes,3,opt,name=platformUserID,proto3" json:"platformUserID"` + ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` + ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` + ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` + MediaAccountUuid string `protobuf:"bytes,7,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + ManagerUuid string `protobuf:"bytes,8,opt,name=managerUuid,proto3" json:"managerUuid"` + ManagerUserName string `protobuf:"bytes,9,opt,name=managerUserName,proto3" json:"managerUserName"` + ArtistPhoneAreaCode string `protobuf:"bytes,10,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` + ArtistSubNum string `protobuf:"bytes,11,opt,name=artistSubNum,proto3" json:"artistSubNum"` } func (x *UpdateMediaAccountReq) Reset() { *x = UpdateMediaAccountReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateMediaAccountReq) String() string { @@ -672,7 +743,7 @@ func (*UpdateMediaAccountReq) ProtoMessage() {} func (x *UpdateMediaAccountReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[3] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -757,18 +828,28 @@ func (x *UpdateMediaAccountReq) GetArtistPhoneAreaCode() string { return "" } +func (x *UpdateMediaAccountReq) GetArtistSubNum() string { + if x != nil { + return x.ArtistSubNum + } + return "" +} + type UpdateMediaAccountResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` } func (x *UpdateMediaAccountResp) Reset() { *x = UpdateMediaAccountResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateMediaAccountResp) String() string { @@ -779,7 +860,7 @@ func (*UpdateMediaAccountResp) ProtoMessage() {} func (x *UpdateMediaAccountResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[4] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -803,17 +884,20 @@ func (x *UpdateMediaAccountResp) GetMediaAccountUuid() string { // UnbindManager type UnbindManagerReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` } func (x *UnbindManagerReq) Reset() { *x = UnbindManagerReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UnbindManagerReq) String() string { @@ -824,7 +908,7 @@ func (*UnbindManagerReq) ProtoMessage() {} func (x *UnbindManagerReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[5] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -847,17 +931,20 @@ func (x *UnbindManagerReq) GetMediaAccountUuid() string { } type UnbindManagerResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - OldBindArtistUuid string `protobuf:"bytes,1,opt,name=oldBindArtistUuid,proto3" json:"oldBindArtistUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OldBindArtistUuid string `protobuf:"bytes,1,opt,name=oldBindArtistUuid,proto3" json:"oldBindArtistUuid"` } func (x *UnbindManagerResp) Reset() { *x = UnbindManagerResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UnbindManagerResp) String() string { @@ -868,7 +955,7 @@ func (*UnbindManagerResp) ProtoMessage() {} func (x *UnbindManagerResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[6] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -891,19 +978,22 @@ func (x *UnbindManagerResp) GetOldBindArtistUuid() string { } type BindManagerReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - ManagerUuid string `protobuf:"bytes,2,opt,name=managerUuid,proto3" json:"managerUuid"` - ManagerUserName string `protobuf:"bytes,3,opt,name=managerUserName,proto3" json:"managerUserName"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + ManagerUuid string `protobuf:"bytes,2,opt,name=managerUuid,proto3" json:"managerUuid"` + ManagerUserName string `protobuf:"bytes,3,opt,name=managerUserName,proto3" json:"managerUserName"` } func (x *BindManagerReq) Reset() { *x = BindManagerReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *BindManagerReq) String() string { @@ -914,7 +1004,7 @@ func (*BindManagerReq) ProtoMessage() {} func (x *BindManagerReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[7] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -952,36 +1042,43 @@ func (x *BindManagerReq) GetManagerUserName() string { // UpdateWorkImage type UpdateWorkImageReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` - Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content"` - Images []string `protobuf:"bytes,3,rep,name=images,proto3" json:"images"` - MediaAccountUuids []string `protobuf:"bytes,4,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` - MediaAccountNames []string `protobuf:"bytes,5,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` - PlatformIDs []PlatformIDENUM `protobuf:"varint,6,rep,packed,name=platformIDs,proto3,enum=Cast.PlatformIDENUM" json:"platformIDs"` - PublishConfig1 *PublishConfig `protobuf:"bytes,7,opt,name=publishConfig1,proto3" json:"publishConfig1"` - PublishConfig2 *PublishConfig `protobuf:"bytes,8,opt,name=publishConfig2,proto3" json:"publishConfig2"` - PublishConfig3 *PublishConfig `protobuf:"bytes,9,opt,name=publishConfig3,proto3" json:"publishConfig3"` - PublishConfig4 *PublishConfig `protobuf:"bytes,10,opt,name=publishConfig4,proto3" json:"publishConfig4"` - Action string `protobuf:"bytes,11,opt,name=action,proto3" json:"action"` - WorkUuid string `protobuf:"bytes,12,opt,name=workUuid,proto3" json:"workUuid"` - ArtistUuid string `protobuf:"bytes,13,opt,name=artistUuid,proto3" json:"artistUuid"` - ArtistPhone string `protobuf:"bytes,14,opt,name=artistPhone,proto3" json:"artistPhone"` - ArtistName string `protobuf:"bytes,15,opt,name=artistName,proto3" json:"artistName"` - ArtistPhoneAreaCode string `protobuf:"bytes,16,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` - Source uint32 `protobuf:"varint,17,opt,name=source,proto3" json:"source"` - LineNo uint32 `protobuf:"varint,18,opt,name=lineNo,proto3" json:"lineNo"` - Remark string `protobuf:"bytes,19,opt,name=remark,proto3" json:"remark"` - Success bool `protobuf:"varint,20,opt,name=success,proto3" json:"success"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` + Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content"` + Images []string `protobuf:"bytes,3,rep,name=images,proto3" json:"images"` + MediaAccountUuids []string `protobuf:"bytes,4,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` + MediaAccountNames []string `protobuf:"bytes,5,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` + PlatformIDs []PlatformIDENUM `protobuf:"varint,6,rep,packed,name=platformIDs,proto3,enum=Cast.PlatformIDENUM" json:"platformIDs"` + PublishConfig1 *PublishConfig `protobuf:"bytes,7,opt,name=publishConfig1,proto3" json:"publishConfig1"` + PublishConfig2 *PublishConfig `protobuf:"bytes,8,opt,name=publishConfig2,proto3" json:"publishConfig2"` + PublishConfig3 *PublishConfig `protobuf:"bytes,9,opt,name=publishConfig3,proto3" json:"publishConfig3"` + PublishConfig4 *PublishConfig `protobuf:"bytes,10,opt,name=publishConfig4,proto3" json:"publishConfig4"` + Action string `protobuf:"bytes,11,opt,name=action,proto3" json:"action"` + WorkUuid string `protobuf:"bytes,12,opt,name=workUuid,proto3" json:"workUuid"` + ArtistUuid string `protobuf:"bytes,13,opt,name=artistUuid,proto3" json:"artistUuid"` + ArtistPhone string `protobuf:"bytes,14,opt,name=artistPhone,proto3" json:"artistPhone"` + ArtistName string `protobuf:"bytes,15,opt,name=artistName,proto3" json:"artistName"` + ArtistPhoneAreaCode string `protobuf:"bytes,16,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` + Source uint32 `protobuf:"varint,17,opt,name=source,proto3" json:"source"` + LineNo uint32 `protobuf:"varint,18,opt,name=lineNo,proto3" json:"lineNo"` + Remark string `protobuf:"bytes,19,opt,name=remark,proto3" json:"remark"` + Success bool `protobuf:"varint,20,opt,name=success,proto3" json:"success"` + ArtistSubNum string `protobuf:"bytes,21,opt,name=artistSubNum,proto3" json:"artistSubNum"` + ScriptUuid string `protobuf:"bytes,22,opt,name=scriptUuid,proto3" json:"scriptUuid"` + PromptUuids []string `protobuf:"bytes,23,rep,name=promptUuids,proto3" json:"promptUuids"` + PublishConfig5 *PublishConfig `protobuf:"bytes,24,opt,name=publishConfig5,proto3" json:"publishConfig5"` } func (x *UpdateWorkImageReq) Reset() { *x = UpdateWorkImageReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkImageReq) String() string { @@ -992,7 +1089,7 @@ func (*UpdateWorkImageReq) ProtoMessage() {} func (x *UpdateWorkImageReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[8] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1147,18 +1244,49 @@ func (x *UpdateWorkImageReq) GetSuccess() bool { return false } +func (x *UpdateWorkImageReq) GetArtistSubNum() string { + if x != nil { + return x.ArtistSubNum + } + return "" +} + +func (x *UpdateWorkImageReq) GetScriptUuid() string { + if x != nil { + return x.ScriptUuid + } + return "" +} + +func (x *UpdateWorkImageReq) GetPromptUuids() []string { + if x != nil { + return x.PromptUuids + } + return nil +} + +func (x *UpdateWorkImageReq) GetPublishConfig5() *PublishConfig { + if x != nil { + return x.PublishConfig5 + } + return nil +} + type UpdateWorkImageResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` } func (x *UpdateWorkImageResp) Reset() { *x = UpdateWorkImageResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkImageResp) String() string { @@ -1169,7 +1297,7 @@ func (*UpdateWorkImageResp) ProtoMessage() {} func (x *UpdateWorkImageResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[9] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1192,22 +1320,25 @@ func (x *UpdateWorkImageResp) GetWorkUuid() string { } type PublishConfig struct { - state protoimpl.MessageState `protogen:"open.v1"` - ForbidComment uint32 `protobuf:"varint,1,opt,name=forbidComment,proto3" json:"forbidComment"` - PublicType uint32 `protobuf:"varint,2,opt,name=publicType,proto3" json:"publicType"` - CanJoin uint32 `protobuf:"varint,3,opt,name=canJoin,proto3" json:"canJoin"` - CanQuote uint32 `protobuf:"varint,4,opt,name=canQuote,proto3" json:"canQuote"` - CanComment uint32 `protobuf:"varint,5,opt,name=canComment,proto3" json:"canComment"` - IsAI uint32 `protobuf:"varint,6,opt,name=isAI,proto3" json:"isAI"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ForbidComment uint32 `protobuf:"varint,1,opt,name=forbidComment,proto3" json:"forbidComment"` + PublicType uint32 `protobuf:"varint,2,opt,name=publicType,proto3" json:"publicType"` + CanJoin uint32 `protobuf:"varint,3,opt,name=canJoin,proto3" json:"canJoin"` + CanQuote uint32 `protobuf:"varint,4,opt,name=canQuote,proto3" json:"canQuote"` + CanComment uint32 `protobuf:"varint,5,opt,name=canComment,proto3" json:"canComment"` + IsAI uint32 `protobuf:"varint,6,opt,name=isAI,proto3" json:"isAI"` } func (x *PublishConfig) Reset() { *x = PublishConfig{} - mi := &file_pb_fiee_cast_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishConfig) String() string { @@ -1218,7 +1349,7 @@ func (*PublishConfig) ProtoMessage() {} func (x *PublishConfig) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[10] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1277,37 +1408,42 @@ func (x *PublishConfig) GetIsAI() uint32 { // UpdateWorkVideo type UpdateWorkVideoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` - Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content"` - VideoUrl string `protobuf:"bytes,3,opt,name=videoUrl,proto3" json:"videoUrl"` - CoverUrl string `protobuf:"bytes,4,opt,name=coverUrl,proto3" json:"coverUrl"` - MediaAccountUuids []string `protobuf:"bytes,5,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` - MediaAccountNames []string `protobuf:"bytes,6,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` - PlatformIDs []PlatformIDENUM `protobuf:"varint,7,rep,packed,name=platformIDs,proto3,enum=Cast.PlatformIDENUM" json:"platformIDs"` - PublishConfig1 *PublishConfig `protobuf:"bytes,8,opt,name=publishConfig1,proto3" json:"publishConfig1"` - PublishConfig2 *PublishConfig `protobuf:"bytes,9,opt,name=publishConfig2,proto3" json:"publishConfig2"` - PublishConfig3 *PublishConfig `protobuf:"bytes,10,opt,name=publishConfig3,proto3" json:"publishConfig3"` - PublishConfig4 *PublishConfig `protobuf:"bytes,11,opt,name=publishConfig4,proto3" json:"publishConfig4"` - Action string `protobuf:"bytes,12,opt,name=action,proto3" json:"action"` - WorkUuid string `protobuf:"bytes,13,opt,name=workUuid,proto3" json:"workUuid"` - ArtistUuid string `protobuf:"bytes,14,opt,name=artistUuid,proto3" json:"artistUuid"` - ArtistPhone string `protobuf:"bytes,15,opt,name=artistPhone,proto3" json:"artistPhone"` - ArtistName string `protobuf:"bytes,16,opt,name=artistName,proto3" json:"artistName"` - ArtistPhoneAreaCode string `protobuf:"bytes,17,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` - Source uint32 `protobuf:"varint,18,opt,name=source,proto3" json:"source"` - CoverTimestampMs uint64 `protobuf:"varint,19,opt,name=coverTimestampMs,proto3" json:"coverTimestampMs"` - AutoPublish AutoPublishENUM `protobuf:"varint,20,opt,name=autoPublish,proto3,enum=Cast.AutoPublishENUM" json:"autoPublish"` - ScriptUuid string `protobuf:"bytes,21,opt,name=scriptUuid,proto3" json:"scriptUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` + Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content"` + VideoUrl string `protobuf:"bytes,3,opt,name=videoUrl,proto3" json:"videoUrl"` + CoverUrl string `protobuf:"bytes,4,opt,name=coverUrl,proto3" json:"coverUrl"` + MediaAccountUuids []string `protobuf:"bytes,5,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` + MediaAccountNames []string `protobuf:"bytes,6,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` + PlatformIDs []PlatformIDENUM `protobuf:"varint,7,rep,packed,name=platformIDs,proto3,enum=Cast.PlatformIDENUM" json:"platformIDs"` + PublishConfig1 *PublishConfig `protobuf:"bytes,8,opt,name=publishConfig1,proto3" json:"publishConfig1"` + PublishConfig2 *PublishConfig `protobuf:"bytes,9,opt,name=publishConfig2,proto3" json:"publishConfig2"` + PublishConfig3 *PublishConfig `protobuf:"bytes,10,opt,name=publishConfig3,proto3" json:"publishConfig3"` + PublishConfig4 *PublishConfig `protobuf:"bytes,11,opt,name=publishConfig4,proto3" json:"publishConfig4"` + Action string `protobuf:"bytes,12,opt,name=action,proto3" json:"action"` + WorkUuid string `protobuf:"bytes,13,opt,name=workUuid,proto3" json:"workUuid"` + ArtistUuid string `protobuf:"bytes,14,opt,name=artistUuid,proto3" json:"artistUuid"` + ArtistPhone string `protobuf:"bytes,15,opt,name=artistPhone,proto3" json:"artistPhone"` + ArtistName string `protobuf:"bytes,16,opt,name=artistName,proto3" json:"artistName"` + ArtistPhoneAreaCode string `protobuf:"bytes,17,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` + Source uint32 `protobuf:"varint,18,opt,name=source,proto3" json:"source"` + CoverTimestampMs uint64 `protobuf:"varint,19,opt,name=coverTimestampMs,proto3" json:"coverTimestampMs"` + AutoPublish AutoPublishENUM `protobuf:"varint,20,opt,name=autoPublish,proto3,enum=Cast.AutoPublishENUM" json:"autoPublish"` + ScriptUuid string `protobuf:"bytes,21,opt,name=scriptUuid,proto3" json:"scriptUuid"` + ArtistSubNum string `protobuf:"bytes,22,opt,name=artistSubNum,proto3" json:"artistSubNum"` + PublishConfig5 *PublishConfig `protobuf:"bytes,24,opt,name=publishConfig5,proto3" json:"publishConfig5"` } func (x *UpdateWorkVideoReq) Reset() { *x = UpdateWorkVideoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkVideoReq) String() string { @@ -1318,7 +1454,7 @@ func (*UpdateWorkVideoReq) ProtoMessage() {} func (x *UpdateWorkVideoReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[11] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1480,18 +1616,35 @@ func (x *UpdateWorkVideoReq) GetScriptUuid() string { return "" } +func (x *UpdateWorkVideoReq) GetArtistSubNum() string { + if x != nil { + return x.ArtistSubNum + } + return "" +} + +func (x *UpdateWorkVideoReq) GetPublishConfig5() *PublishConfig { + if x != nil { + return x.PublishConfig5 + } + return nil +} + type UpdateWorkVideoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` } func (x *UpdateWorkVideoResp) Reset() { *x = UpdateWorkVideoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkVideoResp) String() string { @@ -1502,7 +1655,7 @@ func (*UpdateWorkVideoResp) ProtoMessage() {} func (x *UpdateWorkVideoResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[12] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1525,19 +1678,22 @@ func (x *UpdateWorkVideoResp) GetWorkUuid() string { } type MediaInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - PlatformUserName string `protobuf:"bytes,3,opt,name=platformUserName,proto3" json:"platformUserName"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + PlatformUserName string `protobuf:"bytes,3,opt,name=platformUserName,proto3" json:"platformUserName"` } func (x *MediaInfoReq) Reset() { *x = MediaInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaInfoReq) String() string { @@ -1548,7 +1704,7 @@ func (*MediaInfoReq) ProtoMessage() {} func (x *MediaInfoReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[13] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1585,17 +1741,20 @@ func (x *MediaInfoReq) GetPlatformUserName() string { } type MediaInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Info *MediaUserInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Info *MediaUserInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info"` } func (x *MediaInfoResp) Reset() { *x = MediaInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaInfoResp) String() string { @@ -1606,7 +1765,7 @@ func (*MediaInfoResp) ProtoMessage() {} func (x *MediaInfoResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[14] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1628,33 +1787,144 @@ func (x *MediaInfoResp) GetInfo() *MediaUserInfo { return nil } +type MediaInfoByPlatformReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` +} + +func (x *MediaInfoByPlatformReq) Reset() { + *x = MediaInfoByPlatformReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MediaInfoByPlatformReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MediaInfoByPlatformReq) ProtoMessage() {} + +func (x *MediaInfoByPlatformReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_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 MediaInfoByPlatformReq.ProtoReflect.Descriptor instead. +func (*MediaInfoByPlatformReq) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{15} +} + +func (x *MediaInfoByPlatformReq) GetArtistUuid() string { + if x != nil { + return x.ArtistUuid + } + return "" +} + +func (x *MediaInfoByPlatformReq) GetPlatformID() PlatformIDENUM { + if x != nil { + return x.PlatformID + } + return PlatformIDENUM_UNKNOWN +} + +type MediaInfoByPlatformResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Info *MediaUserInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info"` +} + +func (x *MediaInfoByPlatformResp) Reset() { + *x = MediaInfoByPlatformResp{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MediaInfoByPlatformResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MediaInfoByPlatformResp) ProtoMessage() {} + +func (x *MediaInfoByPlatformResp) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_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 MediaInfoByPlatformResp.ProtoReflect.Descriptor instead. +func (*MediaInfoByPlatformResp) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{16} +} + +func (x *MediaInfoByPlatformResp) GetInfo() *MediaUserInfo { + if x != nil { + return x.Info + } + return nil +} + type WorkListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` - PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - WorkCategory uint32 `protobuf:"varint,3,opt,name=workCategory,proto3" json:"workCategory"` - SubmitStartTime string `protobuf:"bytes,4,opt,name=submitStartTime,proto3" json:"submitStartTime"` - SubmitEndTime string `protobuf:"bytes,5,opt,name=submitEndTime,proto3" json:"submitEndTime"` - StatusUpdateTimeStart string `protobuf:"bytes,6,opt,name=statusUpdateTimeStart,proto3" json:"statusUpdateTimeStart"` - StatusUpdateTimeEnd string `protobuf:"bytes,7,opt,name=statusUpdateTimeEnd,proto3" json:"statusUpdateTimeEnd"` - Title string `protobuf:"bytes,8,opt,name=title,proto3" json:"title"` - WorkStatus uint32 `protobuf:"varint,9,opt,name=workStatus,proto3" json:"workStatus"` - MediaAccountUuid string `protobuf:"bytes,10,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - ManagerUserVal string `protobuf:"bytes,11,opt,name=managerUserVal,proto3" json:"managerUserVal"` - Page int32 `protobuf:"varint,12,opt,name=page,proto3" json:"page"` - PageSize int32 `protobuf:"varint,13,opt,name=pageSize,proto3" json:"pageSize"` - MediaAccountUuids []string `protobuf:"bytes,14,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` - CostType int32 `protobuf:"varint,15,opt,name=costType,proto3" json:"costType"` - ScriptUuid string `protobuf:"bytes,16,opt,name=scriptUuid,proto3" json:"scriptUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` + PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` + WorkCategory uint32 `protobuf:"varint,3,opt,name=workCategory,proto3" json:"workCategory"` + SubmitStartTime string `protobuf:"bytes,4,opt,name=submitStartTime,proto3" json:"submitStartTime"` + SubmitEndTime string `protobuf:"bytes,5,opt,name=submitEndTime,proto3" json:"submitEndTime"` + StatusUpdateTimeStart string `protobuf:"bytes,6,opt,name=statusUpdateTimeStart,proto3" json:"statusUpdateTimeStart"` + StatusUpdateTimeEnd string `protobuf:"bytes,7,opt,name=statusUpdateTimeEnd,proto3" json:"statusUpdateTimeEnd"` + Title string `protobuf:"bytes,8,opt,name=title,proto3" json:"title"` + WorkStatus uint32 `protobuf:"varint,9,opt,name=workStatus,proto3" json:"workStatus"` + MediaAccountUuid string `protobuf:"bytes,10,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + ManagerUserVal string `protobuf:"bytes,11,opt,name=managerUserVal,proto3" json:"managerUserVal"` + Page int32 `protobuf:"varint,12,opt,name=page,proto3" json:"page"` + PageSize int32 `protobuf:"varint,13,opt,name=pageSize,proto3" json:"pageSize"` + MediaAccountUuids []string `protobuf:"bytes,14,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` + CostType int32 `protobuf:"varint,15,opt,name=costType,proto3" json:"costType"` + ScriptUuid string `protobuf:"bytes,16,opt,name=scriptUuid,proto3" json:"scriptUuid"` + ArtistSubNum string `protobuf:"bytes,17,opt,name=artistSubNum,proto3" json:"artistSubNum"` + TiktokStatus uint32 `protobuf:"varint,18,opt,name=tiktokStatus,proto3" json:"tiktokStatus"` + InsStatus uint32 `protobuf:"varint,19,opt,name=insStatus,proto3" json:"insStatus"` + DmStatus uint32 `protobuf:"varint,20,opt,name=dmStatus,proto3" json:"dmStatus"` + YoutubeStatus uint32 `protobuf:"varint,21,opt,name=youtubeStatus,proto3" json:"youtubeStatus"` + BlueskyStatus uint32 `protobuf:"varint,22,opt,name=blueskyStatus,proto3" json:"blueskyStatus"` } func (x *WorkListReq) Reset() { *x = WorkListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkListReq) String() string { @@ -1664,8 +1934,8 @@ func (x *WorkListReq) String() string { func (*WorkListReq) ProtoMessage() {} func (x *WorkListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[15] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[17] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1677,7 +1947,7 @@ func (x *WorkListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkListReq.ProtoReflect.Descriptor instead. func (*WorkListReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{15} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{17} } func (x *WorkListReq) GetArtistVal() string { @@ -1792,19 +2062,64 @@ func (x *WorkListReq) GetScriptUuid() string { return "" } +func (x *WorkListReq) GetArtistSubNum() string { + if x != nil { + return x.ArtistSubNum + } + return "" +} + +func (x *WorkListReq) GetTiktokStatus() uint32 { + if x != nil { + return x.TiktokStatus + } + return 0 +} + +func (x *WorkListReq) GetInsStatus() uint32 { + if x != nil { + return x.InsStatus + } + return 0 +} + +func (x *WorkListReq) GetDmStatus() uint32 { + if x != nil { + return x.DmStatus + } + return 0 +} + +func (x *WorkListReq) GetYoutubeStatus() uint32 { + if x != nil { + return x.YoutubeStatus + } + return 0 +} + +func (x *WorkListReq) GetBlueskyStatus() uint32 { + if x != nil { + return x.BlueskyStatus + } + return 0 +} + type WorkListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*WorkListResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*WorkListResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` } func (x *WorkListResp) Reset() { *x = WorkListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkListResp) String() string { @@ -1814,8 +2129,8 @@ func (x *WorkListResp) String() string { func (*WorkListResp) ProtoMessage() {} func (x *WorkListResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[16] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[18] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1827,7 +2142,7 @@ func (x *WorkListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkListResp.ProtoReflect.Descriptor instead. func (*WorkListResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{16} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{18} } func (x *WorkListResp) GetData() []*WorkListResp_Info { @@ -1845,17 +2160,20 @@ func (x *WorkListResp) GetCount() int64 { } type WorkDetailReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` } func (x *WorkDetailReq) Reset() { *x = WorkDetailReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkDetailReq) String() string { @@ -1865,8 +2183,8 @@ func (x *WorkDetailReq) String() string { func (*WorkDetailReq) ProtoMessage() {} func (x *WorkDetailReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[17] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[19] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1878,7 +2196,7 @@ func (x *WorkDetailReq) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkDetailReq.ProtoReflect.Descriptor instead. func (*WorkDetailReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{17} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{19} } func (x *WorkDetailReq) GetWorkUuid() string { @@ -1889,24 +2207,27 @@ func (x *WorkDetailReq) GetWorkUuid() string { } type WorkLogInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` - OperatorName string `protobuf:"bytes,4,opt,name=operatorName,proto3" json:"operatorName"` - OperatorID string `protobuf:"bytes,5,opt,name=operatorID,proto3" json:"operatorID"` - UpdateTime string `protobuf:"bytes,6,opt,name=updateTime,proto3" json:"updateTime"` - ExtraData string `protobuf:"bytes,7,opt,name=extraData,proto3" json:"extraData"` - WorkStatus uint32 `protobuf:"varint,8,opt,name=workStatus,proto3" json:"workStatus"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` + OperatorName string `protobuf:"bytes,4,opt,name=operatorName,proto3" json:"operatorName"` + OperatorID string `protobuf:"bytes,5,opt,name=operatorID,proto3" json:"operatorID"` + UpdateTime string `protobuf:"bytes,6,opt,name=updateTime,proto3" json:"updateTime"` + ExtraData string `protobuf:"bytes,7,opt,name=extraData,proto3" json:"extraData"` + WorkStatus uint32 `protobuf:"varint,8,opt,name=workStatus,proto3" json:"workStatus"` } func (x *WorkLogInfo) Reset() { *x = WorkLogInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkLogInfo) String() string { @@ -1916,8 +2237,8 @@ func (x *WorkLogInfo) String() string { func (*WorkLogInfo) ProtoMessage() {} func (x *WorkLogInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[18] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[20] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1929,7 +2250,7 @@ func (x *WorkLogInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkLogInfo.ProtoReflect.Descriptor instead. func (*WorkLogInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{18} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{20} } func (x *WorkLogInfo) GetWorkUuid() string { @@ -1989,7 +2310,10 @@ func (x *WorkLogInfo) GetWorkStatus() uint32 { } type WorkDetailResp struct { - state protoimpl.MessageState `protogen:"open.v1"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` @@ -2007,23 +2331,25 @@ type WorkDetailResp struct { ApprovalID string `protobuf:"bytes,15,opt,name=approvalID,proto3" json:"approvalID"` WorkLogData []*WorkLogInfo `protobuf:"bytes,16,rep,name=WorkLogData,proto3" json:"WorkLogData"` WorkCategory uint32 `protobuf:"varint,17,opt,name=workCategory,proto3" json:"workCategory"` - MediaAccData map[string]*MediaUserInfo `protobuf:"bytes,18,rep,name=mediaAccData,proto3" json:"mediaAccData" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + MediaAccData map[string]*MediaUserInfo `protobuf:"bytes,18,rep,name=mediaAccData,proto3" json:"mediaAccData" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` CoverTimestampMs uint64 `protobuf:"varint,19,opt,name=coverTimestampMs,proto3" json:"coverTimestampMs"` ScriptUuid string `protobuf:"bytes,20,opt,name=scriptUuid,proto3" json:"scriptUuid"` ArtistUuid string `protobuf:"bytes,21,opt,name=artistUuid,proto3" json:"artistUuid"` - TiktokStatus uint32 `protobuf:"varint,22,opt,name=tiktokStatus,proto3" json:"tiktokStatus"` - InsStatus uint32 `protobuf:"varint,23,opt,name=insStatus,proto3" json:"insStatus"` - DmStatus uint32 `protobuf:"varint,24,opt,name=dmStatus,proto3" json:"dmStatus"` - NeedPlatformIDs []int32 `protobuf:"varint,25,rep,packed,name=needPlatformIDs,proto3" json:"needPlatformIDs"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + // uint32 tiktokStatus = 22; + // uint32 insStatus = 23; + // uint32 dmStatus = 24; + NeedPlatformIDs []int32 `protobuf:"varint,25,rep,packed,name=needPlatformIDs,proto3" json:"needPlatformIDs"` + ArtistSubNum string `protobuf:"bytes,26,opt,name=artistSubNum,proto3" json:"artistSubNum"` + PublishConfig5 *PublishConfig `protobuf:"bytes,27,opt,name=publishConfig5,proto3" json:"publishConfig5"` } func (x *WorkDetailResp) Reset() { *x = WorkDetailResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkDetailResp) String() string { @@ -2033,8 +2359,8 @@ func (x *WorkDetailResp) String() string { func (*WorkDetailResp) ProtoMessage() {} func (x *WorkDetailResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[19] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[21] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2046,7 +2372,7 @@ func (x *WorkDetailResp) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkDetailResp.ProtoReflect.Descriptor instead. func (*WorkDetailResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{19} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{21} } func (x *WorkDetailResp) GetWorkUuid() string { @@ -2196,27 +2522,6 @@ func (x *WorkDetailResp) GetArtistUuid() string { return "" } -func (x *WorkDetailResp) GetTiktokStatus() uint32 { - if x != nil { - return x.TiktokStatus - } - return 0 -} - -func (x *WorkDetailResp) GetInsStatus() uint32 { - if x != nil { - return x.InsStatus - } - return 0 -} - -func (x *WorkDetailResp) GetDmStatus() uint32 { - if x != nil { - return x.DmStatus - } - return 0 -} - func (x *WorkDetailResp) GetNeedPlatformIDs() []int32 { if x != nil { return x.NeedPlatformIDs @@ -2224,25 +2529,42 @@ func (x *WorkDetailResp) GetNeedPlatformIDs() []int32 { return nil } +func (x *WorkDetailResp) GetArtistSubNum() string { + if x != nil { + return x.ArtistSubNum + } + return "" +} + +func (x *WorkDetailResp) GetPublishConfig5() *PublishConfig { + if x != nil { + return x.PublishConfig5 + } + return nil +} + type UpdateStatusReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` - WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` - ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` - ConfirmRemark string `protobuf:"bytes,4,opt,name=confirmRemark,proto3" json:"confirmRemark"` - ConfirmStatus uint32 `protobuf:"varint,5,opt,name=confirmStatus,proto3" json:"confirmStatus"` - ApprovalReply string `protobuf:"bytes,6,opt,name=approvalReply,proto3" json:"approvalReply"` - AutoPublish AutoPublishENUM `protobuf:"varint,7,opt,name=autoPublish,proto3,enum=Cast.AutoPublishENUM" json:"autoPublish"` - CostType uint32 `protobuf:"varint,8,opt,name=costType,proto3" json:"costType"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` + WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` + ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` + ConfirmRemark string `protobuf:"bytes,4,opt,name=confirmRemark,proto3" json:"confirmRemark"` + ConfirmStatus uint32 `protobuf:"varint,5,opt,name=confirmStatus,proto3" json:"confirmStatus"` + ApprovalReply string `protobuf:"bytes,6,opt,name=approvalReply,proto3" json:"approvalReply"` + AutoPublish AutoPublishENUM `protobuf:"varint,7,opt,name=autoPublish,proto3,enum=Cast.AutoPublishENUM" json:"autoPublish"` + CostType uint32 `protobuf:"varint,8,opt,name=costType,proto3" json:"costType"` } func (x *UpdateStatusReq) Reset() { *x = UpdateStatusReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateStatusReq) String() string { @@ -2252,8 +2574,8 @@ func (x *UpdateStatusReq) String() string { func (*UpdateStatusReq) ProtoMessage() {} func (x *UpdateStatusReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[20] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[22] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2265,7 +2587,7 @@ func (x *UpdateStatusReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateStatusReq.ProtoReflect.Descriptor instead. func (*UpdateStatusReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{20} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{22} } func (x *UpdateStatusReq) GetWorkAction() WorkActionENUM { @@ -2325,17 +2647,20 @@ func (x *UpdateStatusReq) GetCostType() uint32 { } type MediaAccountsReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` } func (x *MediaAccountsReq) Reset() { *x = MediaAccountsReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaAccountsReq) String() string { @@ -2345,8 +2670,8 @@ func (x *MediaAccountsReq) String() string { func (*MediaAccountsReq) ProtoMessage() {} func (x *MediaAccountsReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[21] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[23] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2358,7 +2683,7 @@ func (x *MediaAccountsReq) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaAccountsReq.ProtoReflect.Descriptor instead. func (*MediaAccountsReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{21} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{23} } func (x *MediaAccountsReq) GetArtistUuid() string { @@ -2369,17 +2694,20 @@ func (x *MediaAccountsReq) GetArtistUuid() string { } type MediaAccountsResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*MediaAccountsResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*MediaAccountsResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` } func (x *MediaAccountsResp) Reset() { *x = MediaAccountsResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaAccountsResp) String() string { @@ -2389,8 +2717,8 @@ func (x *MediaAccountsResp) String() string { func (*MediaAccountsResp) ProtoMessage() {} func (x *MediaAccountsResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[22] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[24] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2402,7 +2730,7 @@ func (x *MediaAccountsResp) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaAccountsResp.ProtoReflect.Descriptor instead. func (*MediaAccountsResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{22} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{24} } func (x *MediaAccountsResp) GetData() []*MediaAccountsResp_Info { @@ -2413,19 +2741,22 @@ func (x *MediaAccountsResp) GetData() []*MediaAccountsResp_Info { } type MediaWorksReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - Page int32 `protobuf:"varint,2,opt,name=page,proto3" json:"page"` - PageSize int32 `protobuf:"varint,3,opt,name=pageSize,proto3" json:"pageSize"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + Page int32 `protobuf:"varint,2,opt,name=page,proto3" json:"page"` + PageSize int32 `protobuf:"varint,3,opt,name=pageSize,proto3" json:"pageSize"` } func (x *MediaWorksReq) Reset() { *x = MediaWorksReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaWorksReq) String() string { @@ -2435,8 +2766,8 @@ func (x *MediaWorksReq) String() string { func (*MediaWorksReq) ProtoMessage() {} func (x *MediaWorksReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[23] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[25] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2448,7 +2779,7 @@ func (x *MediaWorksReq) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaWorksReq.ProtoReflect.Descriptor instead. func (*MediaWorksReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{23} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{25} } func (x *MediaWorksReq) GetMediaAccountUuid() string { @@ -2473,18 +2804,21 @@ func (x *MediaWorksReq) GetPageSize() int32 { } type MediaWorksResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count"` - Data []*MediaWorksResp_Info `protobuf:"bytes,2,rep,name=data,proto3" json:"data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count"` + Data []*MediaWorksResp_Info `protobuf:"bytes,2,rep,name=data,proto3" json:"data"` } func (x *MediaWorksResp) Reset() { *x = MediaWorksResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaWorksResp) String() string { @@ -2494,8 +2828,8 @@ func (x *MediaWorksResp) String() string { func (*MediaWorksResp) ProtoMessage() {} func (x *MediaWorksResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[24] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[26] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2507,7 +2841,7 @@ func (x *MediaWorksResp) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaWorksResp.ProtoReflect.Descriptor instead. func (*MediaWorksResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{24} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{26} } func (x *MediaWorksResp) GetCount() int64 { @@ -2525,17 +2859,20 @@ func (x *MediaWorksResp) GetData() []*MediaWorksResp_Info { } type PublishReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuids []string `protobuf:"bytes,1,rep,name=workUuids,proto3" json:"workUuids"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuids []string `protobuf:"bytes,1,rep,name=workUuids,proto3" json:"workUuids"` } func (x *PublishReq) Reset() { *x = PublishReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishReq) String() string { @@ -2545,8 +2882,8 @@ func (x *PublishReq) String() string { func (*PublishReq) ProtoMessage() {} func (x *PublishReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[25] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[27] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2558,7 +2895,7 @@ func (x *PublishReq) ProtoReflect() protoreflect.Message { // Deprecated: Use PublishReq.ProtoReflect.Descriptor instead. func (*PublishReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{25} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{27} } func (x *PublishReq) GetWorkUuids() []string { @@ -2569,17 +2906,20 @@ func (x *PublishReq) GetWorkUuids() []string { } type PublishResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*PublishResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*PublishResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` } func (x *PublishResp) Reset() { *x = PublishResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishResp) String() string { @@ -2589,8 +2929,8 @@ func (x *PublishResp) String() string { func (*PublishResp) ProtoMessage() {} func (x *PublishResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[26] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[28] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2602,7 +2942,7 @@ func (x *PublishResp) ProtoReflect() protoreflect.Message { // Deprecated: Use PublishResp.ProtoReflect.Descriptor instead. func (*PublishResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{26} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{28} } func (x *PublishResp) GetData() []*PublishResp_Info { @@ -2613,19 +2953,22 @@ func (x *PublishResp) GetData() []*PublishResp_Info { } type RePublishReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - MediaAccountUuids []string `protobuf:"bytes,2,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` - MediaAccountNames []string `protobuf:"bytes,3,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + MediaAccountUuids []string `protobuf:"bytes,2,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` + MediaAccountNames []string `protobuf:"bytes,3,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` } func (x *RePublishReq) Reset() { *x = RePublishReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RePublishReq) String() string { @@ -2635,8 +2978,8 @@ func (x *RePublishReq) String() string { func (*RePublishReq) ProtoMessage() {} func (x *RePublishReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[27] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[29] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2648,7 +2991,7 @@ func (x *RePublishReq) ProtoReflect() protoreflect.Message { // Deprecated: Use RePublishReq.ProtoReflect.Descriptor instead. func (*RePublishReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{27} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{29} } func (x *RePublishReq) GetWorkUuid() string { @@ -2673,18 +3016,21 @@ func (x *RePublishReq) GetMediaAccountNames() []string { } type RePublishResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - WorkCategory int32 `protobuf:"varint,2,opt,name=workCategory,proto3" json:"workCategory"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + WorkCategory int32 `protobuf:"varint,2,opt,name=workCategory,proto3" json:"workCategory"` } func (x *RePublishResp) Reset() { *x = RePublishResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RePublishResp) String() string { @@ -2694,8 +3040,8 @@ func (x *RePublishResp) String() string { func (*RePublishResp) ProtoMessage() {} func (x *RePublishResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[28] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[30] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2707,7 +3053,7 @@ func (x *RePublishResp) ProtoReflect() protoreflect.Message { // Deprecated: Use RePublishResp.ProtoReflect.Descriptor instead. func (*RePublishResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{28} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{30} } func (x *RePublishResp) GetArtistUuid() string { @@ -2725,17 +3071,20 @@ func (x *RePublishResp) GetWorkCategory() int32 { } type DelWorkReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` } func (x *DelWorkReq) Reset() { *x = DelWorkReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DelWorkReq) String() string { @@ -2745,8 +3094,8 @@ func (x *DelWorkReq) String() string { func (*DelWorkReq) ProtoMessage() {} func (x *DelWorkReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[29] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[31] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2758,7 +3107,7 @@ func (x *DelWorkReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DelWorkReq.ProtoReflect.Descriptor instead. func (*DelWorkReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{29} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{31} } func (x *DelWorkReq) GetWorkUuid() string { @@ -2769,17 +3118,20 @@ func (x *DelWorkReq) GetWorkUuid() string { } type WorkInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` } func (x *WorkInfoReq) Reset() { *x = WorkInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkInfoReq) String() string { @@ -2789,8 +3141,8 @@ func (x *WorkInfoReq) String() string { func (*WorkInfoReq) ProtoMessage() {} func (x *WorkInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[30] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[32] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2802,7 +3154,7 @@ func (x *WorkInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkInfoReq.ProtoReflect.Descriptor instead. func (*WorkInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{30} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{32} } func (x *WorkInfoReq) GetWorkUuid() string { @@ -2813,22 +3165,25 @@ func (x *WorkInfoReq) GetWorkUuid() string { } type WorkInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkStatus uint32 `protobuf:"varint,1,opt,name=workStatus,proto3" json:"workStatus"` - ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` - ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` - ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` - ArtistPhoneAreaCode string `protobuf:"bytes,5,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` - WorkCategory uint32 `protobuf:"varint,6,opt,name=workCategory,proto3" json:"workCategory"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkStatus uint32 `protobuf:"varint,1,opt,name=workStatus,proto3" json:"workStatus"` + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` + ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` + ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` + ArtistPhoneAreaCode string `protobuf:"bytes,5,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` + WorkCategory uint32 `protobuf:"varint,6,opt,name=workCategory,proto3" json:"workCategory"` } func (x *WorkInfoResp) Reset() { *x = WorkInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkInfoResp) String() string { @@ -2838,8 +3193,8 @@ func (x *WorkInfoResp) String() string { func (*WorkInfoResp) ProtoMessage() {} func (x *WorkInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[31] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[33] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2851,7 +3206,7 @@ func (x *WorkInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkInfoResp.ProtoReflect.Descriptor instead. func (*WorkInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{31} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{33} } func (x *WorkInfoResp) GetWorkStatus() uint32 { @@ -2897,17 +3252,20 @@ func (x *WorkInfoResp) GetWorkCategory() uint32 { } type ArtistInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` } func (x *ArtistInfoReq) Reset() { *x = ArtistInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistInfoReq) String() string { @@ -2917,8 +3275,8 @@ func (x *ArtistInfoReq) String() string { func (*ArtistInfoReq) ProtoMessage() {} func (x *ArtistInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[32] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[34] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2930,7 +3288,7 @@ func (x *ArtistInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistInfoReq.ProtoReflect.Descriptor instead. func (*ArtistInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{32} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{34} } func (x *ArtistInfoReq) GetArtistUuid() string { @@ -2941,20 +3299,23 @@ func (x *ArtistInfoReq) GetArtistUuid() string { } type ArtistInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - TikTokEffectiveCount uint32 `protobuf:"varint,1,opt,name=TikTokEffectiveCount,proto3" json:"TikTokEffectiveCount"` - YouTubeEffectiveCount uint32 `protobuf:"varint,2,opt,name=YouTubeEffectiveCount,proto3" json:"YouTubeEffectiveCount"` - InsEffectiveCount uint32 `protobuf:"varint,3,opt,name=InsEffectiveCount,proto3" json:"InsEffectiveCount"` - DMEffectiveCount uint32 `protobuf:"varint,4,opt,name=DMEffectiveCount,proto3" json:"DMEffectiveCount"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TikTokEffectiveCount uint32 `protobuf:"varint,1,opt,name=TikTokEffectiveCount,proto3" json:"TikTokEffectiveCount"` + YouTubeEffectiveCount uint32 `protobuf:"varint,2,opt,name=YouTubeEffectiveCount,proto3" json:"YouTubeEffectiveCount"` + InsEffectiveCount uint32 `protobuf:"varint,3,opt,name=InsEffectiveCount,proto3" json:"InsEffectiveCount"` + DMEffectiveCount uint32 `protobuf:"varint,4,opt,name=DMEffectiveCount,proto3" json:"DMEffectiveCount"` } func (x *ArtistInfoResp) Reset() { *x = ArtistInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistInfoResp) String() string { @@ -2964,8 +3325,8 @@ func (x *ArtistInfoResp) String() string { func (*ArtistInfoResp) ProtoMessage() {} func (x *ArtistInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[33] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2977,7 +3338,7 @@ func (x *ArtistInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistInfoResp.ProtoReflect.Descriptor instead. func (*ArtistInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{33} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{35} } func (x *ArtistInfoResp) GetTikTokEffectiveCount() uint32 { @@ -3009,17 +3370,20 @@ func (x *ArtistInfoResp) GetDMEffectiveCount() uint32 { } type ImportWorkBatchReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ImageWorks []*UpdateWorkImageReq `protobuf:"bytes,1,rep,name=imageWorks,proto3" json:"imageWorks"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ImageWorks []*UpdateWorkImageReq `protobuf:"bytes,1,rep,name=imageWorks,proto3" json:"imageWorks"` } func (x *ImportWorkBatchReq) Reset() { *x = ImportWorkBatchReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ImportWorkBatchReq) String() string { @@ -3029,8 +3393,8 @@ func (x *ImportWorkBatchReq) String() string { func (*ImportWorkBatchReq) ProtoMessage() {} func (x *ImportWorkBatchReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[34] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[36] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3042,7 +3406,7 @@ func (x *ImportWorkBatchReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ImportWorkBatchReq.ProtoReflect.Descriptor instead. func (*ImportWorkBatchReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{34} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{36} } func (x *ImportWorkBatchReq) GetImageWorks() []*UpdateWorkImageReq { @@ -3053,19 +3417,22 @@ func (x *ImportWorkBatchReq) GetImageWorks() []*UpdateWorkImageReq { } type ImportWorkBatchResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - ImageWorks []*UpdateWorkImageReq `protobuf:"bytes,1,rep,name=imageWorks,proto3" json:"imageWorks"` - SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` - FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ImageWorks []*UpdateWorkImageReq `protobuf:"bytes,1,rep,name=imageWorks,proto3" json:"imageWorks"` + SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` + FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` } func (x *ImportWorkBatchResp) Reset() { *x = ImportWorkBatchResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ImportWorkBatchResp) String() string { @@ -3075,8 +3442,8 @@ func (x *ImportWorkBatchResp) String() string { func (*ImportWorkBatchResp) ProtoMessage() {} func (x *ImportWorkBatchResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[35] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[37] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3088,7 +3455,7 @@ func (x *ImportWorkBatchResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ImportWorkBatchResp.ProtoReflect.Descriptor instead. func (*ImportWorkBatchResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{35} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{37} } func (x *ImportWorkBatchResp) GetImageWorks() []*UpdateWorkImageReq { @@ -3113,25 +3480,28 @@ func (x *ImportWorkBatchResp) GetFailCount() int32 { } type PlatformInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - MediaAccountUuid string `protobuf:"bytes,2,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` - PublishType uint32 `protobuf:"varint,4,opt,name=publishType,proto3" json:"publishType"` - PublishResp string `protobuf:"bytes,5,opt,name=publishResp,proto3" json:"publishResp"` - PublishMediaId string `protobuf:"bytes,6,opt,name=publishMediaId,proto3" json:"publishMediaId"` - PublishStatus PublishStatusENUM `protobuf:"varint,7,opt,name=publishStatus,proto3,enum=Cast.PublishStatusENUM" json:"publishStatus"` - Remark string `protobuf:"bytes,8,opt,name=remark,proto3" json:"remark"` - PlatformUuid string `protobuf:"bytes,9,opt,name=platformUuid,proto3" json:"platformUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + MediaAccountUuid string `protobuf:"bytes,2,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` + PublishType uint32 `protobuf:"varint,4,opt,name=publishType,proto3" json:"publishType"` + PublishResp string `protobuf:"bytes,5,opt,name=publishResp,proto3" json:"publishResp"` + PublishMediaId string `protobuf:"bytes,6,opt,name=publishMediaId,proto3" json:"publishMediaId"` + PublishStatus PublishStatusENUM `protobuf:"varint,7,opt,name=publishStatus,proto3,enum=Cast.PublishStatusENUM" json:"publishStatus"` + Remark string `protobuf:"bytes,8,opt,name=remark,proto3" json:"remark"` + PlatformUuid string `protobuf:"bytes,9,opt,name=platformUuid,proto3" json:"platformUuid"` } func (x *PlatformInfo) Reset() { *x = PlatformInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[38] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PlatformInfo) String() string { @@ -3141,8 +3511,8 @@ func (x *PlatformInfo) String() string { func (*PlatformInfo) ProtoMessage() {} func (x *PlatformInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[36] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[38] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3154,7 +3524,7 @@ func (x *PlatformInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use PlatformInfo.ProtoReflect.Descriptor instead. func (*PlatformInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{36} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{38} } func (x *PlatformInfo) GetWorkUuid() string { @@ -3221,17 +3591,20 @@ func (x *PlatformInfo) GetPlatformUuid() string { } type UpdateWorkPlatformInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PlatformInfoData []*PlatformInfo `protobuf:"bytes,1,rep,name=PlatformInfoData,proto3" json:"PlatformInfoData"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlatformInfoData []*PlatformInfo `protobuf:"bytes,1,rep,name=PlatformInfoData,proto3" json:"PlatformInfoData"` } func (x *UpdateWorkPlatformInfoReq) Reset() { *x = UpdateWorkPlatformInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[37] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[39] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkPlatformInfoReq) String() string { @@ -3241,8 +3614,8 @@ func (x *UpdateWorkPlatformInfoReq) String() string { func (*UpdateWorkPlatformInfoReq) ProtoMessage() {} func (x *UpdateWorkPlatformInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[37] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[39] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3254,7 +3627,7 @@ func (x *UpdateWorkPlatformInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkPlatformInfoReq.ProtoReflect.Descriptor instead. func (*UpdateWorkPlatformInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{37} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{39} } func (x *UpdateWorkPlatformInfoReq) GetPlatformInfoData() []*PlatformInfo { @@ -3265,17 +3638,20 @@ func (x *UpdateWorkPlatformInfoReq) GetPlatformInfoData() []*PlatformInfo { } type UpdateWorkPlatformInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid []string `protobuf:"bytes,1,rep,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid []string `protobuf:"bytes,1,rep,name=workUuid,proto3" json:"workUuid"` } func (x *UpdateWorkPlatformInfoResp) Reset() { *x = UpdateWorkPlatformInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[38] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[40] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkPlatformInfoResp) String() string { @@ -3285,8 +3661,8 @@ func (x *UpdateWorkPlatformInfoResp) String() string { func (*UpdateWorkPlatformInfoResp) ProtoMessage() {} func (x *UpdateWorkPlatformInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[38] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[40] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3298,7 +3674,7 @@ func (x *UpdateWorkPlatformInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkPlatformInfoResp.ProtoReflect.Descriptor instead. func (*UpdateWorkPlatformInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{38} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{40} } func (x *UpdateWorkPlatformInfoResp) GetWorkUuid() []string { @@ -3309,20 +3685,23 @@ func (x *UpdateWorkPlatformInfoResp) GetWorkUuid() []string { } type UpdateWorkPublishLogReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - Detail string `protobuf:"bytes,3,opt,name=detail,proto3" json:"detail"` - Action string `protobuf:"bytes,4,opt,name=action,proto3" json:"action"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + Detail string `protobuf:"bytes,3,opt,name=detail,proto3" json:"detail"` + Action string `protobuf:"bytes,4,opt,name=action,proto3" json:"action"` } func (x *UpdateWorkPublishLogReq) Reset() { *x = UpdateWorkPublishLogReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[41] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkPublishLogReq) String() string { @@ -3332,8 +3711,8 @@ func (x *UpdateWorkPublishLogReq) String() string { func (*UpdateWorkPublishLogReq) ProtoMessage() {} func (x *UpdateWorkPublishLogReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[39] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[41] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3345,7 +3724,7 @@ func (x *UpdateWorkPublishLogReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkPublishLogReq.ProtoReflect.Descriptor instead. func (*UpdateWorkPublishLogReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{39} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{41} } func (x *UpdateWorkPublishLogReq) GetWorkUuid() string { @@ -3377,17 +3756,20 @@ func (x *UpdateWorkPublishLogReq) GetAction() string { } type RefreshWorkListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PublishStatus uint32 `protobuf:"varint,1,opt,name=publishStatus,proto3" json:"publishStatus"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PublishStatus uint32 `protobuf:"varint,1,opt,name=publishStatus,proto3" json:"publishStatus"` } func (x *RefreshWorkListReq) Reset() { *x = RefreshWorkListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[40] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[42] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshWorkListReq) String() string { @@ -3397,8 +3779,8 @@ func (x *RefreshWorkListReq) String() string { func (*RefreshWorkListReq) ProtoMessage() {} func (x *RefreshWorkListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[40] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[42] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3410,7 +3792,7 @@ func (x *RefreshWorkListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use RefreshWorkListReq.ProtoReflect.Descriptor instead. func (*RefreshWorkListReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{40} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{42} } func (x *RefreshWorkListReq) GetPublishStatus() uint32 { @@ -3421,17 +3803,20 @@ func (x *RefreshWorkListReq) GetPublishStatus() uint32 { } type RefreshWorkListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*RefreshWorkListResp_Info `protobuf:"bytes,3,rep,name=Data,proto3" json:"Data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*RefreshWorkListResp_Info `protobuf:"bytes,3,rep,name=Data,proto3" json:"Data"` } func (x *RefreshWorkListResp) Reset() { *x = RefreshWorkListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[41] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[43] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshWorkListResp) String() string { @@ -3441,8 +3826,8 @@ func (x *RefreshWorkListResp) String() string { func (*RefreshWorkListResp) ProtoMessage() {} func (x *RefreshWorkListResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[41] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[43] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3454,7 +3839,7 @@ func (x *RefreshWorkListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use RefreshWorkListResp.ProtoReflect.Descriptor instead. func (*RefreshWorkListResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{41} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{43} } func (x *RefreshWorkListResp) GetData() []*RefreshWorkListResp_Info { @@ -3465,17 +3850,20 @@ func (x *RefreshWorkListResp) GetData() []*RefreshWorkListResp_Info { } type OAuthAccountReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` } func (x *OAuthAccountReq) Reset() { *x = OAuthAccountReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[42] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[44] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthAccountReq) String() string { @@ -3485,8 +3873,8 @@ func (x *OAuthAccountReq) String() string { func (*OAuthAccountReq) ProtoMessage() {} func (x *OAuthAccountReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[42] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[44] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3498,7 +3886,7 @@ func (x *OAuthAccountReq) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthAccountReq.ProtoReflect.Descriptor instead. func (*OAuthAccountReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{42} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{44} } func (x *OAuthAccountReq) GetMediaAccountUuid() string { @@ -3509,17 +3897,20 @@ func (x *OAuthAccountReq) GetMediaAccountUuid() string { } type OAuthAccountResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` } func (x *OAuthAccountResp) Reset() { *x = OAuthAccountResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[43] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[45] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthAccountResp) String() string { @@ -3529,8 +3920,8 @@ func (x *OAuthAccountResp) String() string { func (*OAuthAccountResp) ProtoMessage() {} func (x *OAuthAccountResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[43] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[45] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3542,7 +3933,7 @@ func (x *OAuthAccountResp) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthAccountResp.ProtoReflect.Descriptor instead. func (*OAuthAccountResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{43} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{45} } func (x *OAuthAccountResp) GetUrl() string { @@ -3553,17 +3944,20 @@ func (x *OAuthAccountResp) GetUrl() string { } type OAuthAccountV2Req struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` } func (x *OAuthAccountV2Req) Reset() { *x = OAuthAccountV2Req{} - mi := &file_pb_fiee_cast_proto_msgTypes[44] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[46] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthAccountV2Req) String() string { @@ -3573,8 +3967,8 @@ func (x *OAuthAccountV2Req) String() string { func (*OAuthAccountV2Req) ProtoMessage() {} func (x *OAuthAccountV2Req) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[44] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[46] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3586,7 +3980,7 @@ func (x *OAuthAccountV2Req) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthAccountV2Req.ProtoReflect.Descriptor instead. func (*OAuthAccountV2Req) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{44} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{46} } func (x *OAuthAccountV2Req) GetMediaAccountUuid() string { @@ -3597,20 +3991,23 @@ func (x *OAuthAccountV2Req) GetMediaAccountUuid() string { } type OAuthAccountV2Resp struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` - PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` - AuthUrl string `protobuf:"bytes,4,opt,name=authUrl,proto3" json:"authUrl"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` + PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` + AuthUrl string `protobuf:"bytes,4,opt,name=authUrl,proto3" json:"authUrl"` } func (x *OAuthAccountV2Resp) Reset() { *x = OAuthAccountV2Resp{} - mi := &file_pb_fiee_cast_proto_msgTypes[45] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[47] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthAccountV2Resp) String() string { @@ -3620,8 +4017,8 @@ func (x *OAuthAccountV2Resp) String() string { func (*OAuthAccountV2Resp) ProtoMessage() {} func (x *OAuthAccountV2Resp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[45] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[47] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3633,7 +4030,7 @@ func (x *OAuthAccountV2Resp) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthAccountV2Resp.ProtoReflect.Descriptor instead. func (*OAuthAccountV2Resp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{45} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{47} } func (x *OAuthAccountV2Resp) GetArtistUuid() string { @@ -3666,18 +4063,21 @@ func (x *OAuthAccountV2Resp) GetAuthUrl() string { // youtube type OAuthYoutubeTokenReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code"` } func (x *OAuthYoutubeTokenReq) Reset() { *x = OAuthYoutubeTokenReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[46] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[48] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthYoutubeTokenReq) String() string { @@ -3687,8 +4087,8 @@ func (x *OAuthYoutubeTokenReq) String() string { func (*OAuthYoutubeTokenReq) ProtoMessage() {} func (x *OAuthYoutubeTokenReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[46] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[48] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3700,7 +4100,7 @@ func (x *OAuthYoutubeTokenReq) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthYoutubeTokenReq.ProtoReflect.Descriptor instead. func (*OAuthYoutubeTokenReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{46} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{48} } func (x *OAuthYoutubeTokenReq) GetMediaAccountUuid() string { @@ -3718,19 +4118,22 @@ func (x *OAuthYoutubeTokenReq) GetCode() string { } type OAuthYoutubeTokenResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - AccessToken string `protobuf:"bytes,1,opt,name=accessToken,proto3" json:"accessToken"` - RefreshToken string `protobuf:"bytes,2,opt,name=refreshToken,proto3" json:"refreshToken"` - ExpireTime int64 `protobuf:"varint,3,opt,name=expireTime,proto3" json:"expireTime"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccessToken string `protobuf:"bytes,1,opt,name=accessToken,proto3" json:"accessToken"` + RefreshToken string `protobuf:"bytes,2,opt,name=refreshToken,proto3" json:"refreshToken"` + ExpireTime int64 `protobuf:"varint,3,opt,name=expireTime,proto3" json:"expireTime"` } func (x *OAuthYoutubeTokenResp) Reset() { *x = OAuthYoutubeTokenResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[47] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[49] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthYoutubeTokenResp) String() string { @@ -3740,8 +4143,8 @@ func (x *OAuthYoutubeTokenResp) String() string { func (*OAuthYoutubeTokenResp) ProtoMessage() {} func (x *OAuthYoutubeTokenResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[47] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[49] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3753,7 +4156,7 @@ func (x *OAuthYoutubeTokenResp) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthYoutubeTokenResp.ProtoReflect.Descriptor instead. func (*OAuthYoutubeTokenResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{47} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{49} } func (x *OAuthYoutubeTokenResp) GetAccessToken() string { @@ -3778,19 +4181,22 @@ func (x *OAuthYoutubeTokenResp) GetExpireTime() int64 { } type OAuthCodeToTokenReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Code string `protobuf:"bytes,1,opt,name=code,proto3" json:"code"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - PlatformID PlatformIDENUM `protobuf:"varint,3,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Code string `protobuf:"bytes,1,opt,name=code,proto3" json:"code"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + PlatformID PlatformIDENUM `protobuf:"varint,3,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` } func (x *OAuthCodeToTokenReq) Reset() { *x = OAuthCodeToTokenReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[48] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[50] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthCodeToTokenReq) String() string { @@ -3800,8 +4206,8 @@ func (x *OAuthCodeToTokenReq) String() string { func (*OAuthCodeToTokenReq) ProtoMessage() {} func (x *OAuthCodeToTokenReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[48] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[50] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3813,7 +4219,7 @@ func (x *OAuthCodeToTokenReq) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthCodeToTokenReq.ProtoReflect.Descriptor instead. func (*OAuthCodeToTokenReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{48} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{50} } func (x *OAuthCodeToTokenReq) GetCode() string { @@ -3838,16 +4244,18 @@ func (x *OAuthCodeToTokenReq) GetPlatformID() PlatformIDENUM { } type OAuthCodeToTokenResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields } func (x *OAuthCodeToTokenResp) Reset() { *x = OAuthCodeToTokenResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[49] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[51] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthCodeToTokenResp) String() string { @@ -3857,8 +4265,8 @@ func (x *OAuthCodeToTokenResp) String() string { func (*OAuthCodeToTokenResp) ProtoMessage() {} func (x *OAuthCodeToTokenResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[49] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[51] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3870,21 +4278,24 @@ func (x *OAuthCodeToTokenResp) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthCodeToTokenResp.ProtoReflect.Descriptor instead. func (*OAuthCodeToTokenResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{49} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{51} } type UpdateOAuthReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*UpdateOAuthReq_Info `protobuf:"bytes,1,rep,name=Data,proto3" json:"Data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*UpdateOAuthReq_Info `protobuf:"bytes,1,rep,name=Data,proto3" json:"Data"` } func (x *UpdateOAuthReq) Reset() { *x = UpdateOAuthReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[50] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[52] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateOAuthReq) String() string { @@ -3894,8 +4305,8 @@ func (x *UpdateOAuthReq) String() string { func (*UpdateOAuthReq) ProtoMessage() {} func (x *UpdateOAuthReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[50] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[52] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3907,7 +4318,7 @@ func (x *UpdateOAuthReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateOAuthReq.ProtoReflect.Descriptor instead. func (*UpdateOAuthReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{50} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{52} } func (x *UpdateOAuthReq) GetData() []*UpdateOAuthReq_Info { @@ -3918,19 +4329,22 @@ func (x *UpdateOAuthReq) GetData() []*UpdateOAuthReq_Info { } type RefreshTokenReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - RefreshToken string `protobuf:"bytes,1,opt,name=refreshToken,proto3" json:"refreshToken"` - PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RefreshToken string `protobuf:"bytes,1,opt,name=refreshToken,proto3" json:"refreshToken"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` } func (x *RefreshTokenReq) Reset() { *x = RefreshTokenReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[51] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[53] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshTokenReq) String() string { @@ -3940,8 +4354,8 @@ func (x *RefreshTokenReq) String() string { func (*RefreshTokenReq) ProtoMessage() {} func (x *RefreshTokenReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[51] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[53] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3953,7 +4367,7 @@ func (x *RefreshTokenReq) ProtoReflect() protoreflect.Message { // Deprecated: Use RefreshTokenReq.ProtoReflect.Descriptor instead. func (*RefreshTokenReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{51} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{53} } func (x *RefreshTokenReq) GetRefreshToken() string { @@ -3978,18 +4392,21 @@ func (x *RefreshTokenReq) GetUserID() string { } type RefreshTokenResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - AccessToken string `protobuf:"bytes,1,opt,name=accessToken,proto3" json:"accessToken"` - PlatformUserID string `protobuf:"bytes,2,opt,name=platformUserID,proto3" json:"platformUserID"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccessToken string `protobuf:"bytes,1,opt,name=accessToken,proto3" json:"accessToken"` + PlatformUserID string `protobuf:"bytes,2,opt,name=platformUserID,proto3" json:"platformUserID"` } func (x *RefreshTokenResp) Reset() { *x = RefreshTokenResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[52] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[54] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshTokenResp) String() string { @@ -3999,8 +4416,8 @@ func (x *RefreshTokenResp) String() string { func (*RefreshTokenResp) ProtoMessage() {} func (x *RefreshTokenResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[52] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[54] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4012,7 +4429,7 @@ func (x *RefreshTokenResp) ProtoReflect() protoreflect.Message { // Deprecated: Use RefreshTokenResp.ProtoReflect.Descriptor instead. func (*RefreshTokenResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{52} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{54} } func (x *RefreshTokenResp) GetAccessToken() string { @@ -4030,19 +4447,22 @@ func (x *RefreshTokenResp) GetPlatformUserID() string { } type PublishMediaInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - PlatformMediaUuid string `protobuf:"bytes,3,opt,name=platformMediaUuid,proto3" json:"platformMediaUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` + PlatformMediaUuid string `protobuf:"bytes,3,opt,name=platformMediaUuid,proto3" json:"platformMediaUuid"` } func (x *PublishMediaInfoReq) Reset() { *x = PublishMediaInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[53] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[55] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishMediaInfoReq) String() string { @@ -4052,8 +4472,8 @@ func (x *PublishMediaInfoReq) String() string { func (*PublishMediaInfoReq) ProtoMessage() {} func (x *PublishMediaInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[53] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[55] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4065,7 +4485,7 @@ func (x *PublishMediaInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use PublishMediaInfoReq.ProtoReflect.Descriptor instead. func (*PublishMediaInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{53} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{55} } func (x *PublishMediaInfoReq) GetWorkUuid() string { @@ -4090,20 +4510,23 @@ func (x *PublishMediaInfoReq) GetPlatformMediaUuid() string { } type PublishMediaInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - PlatformMediaUuid string `protobuf:"bytes,3,opt,name=platformMediaUuid,proto3" json:"platformMediaUuid"` - Info string `protobuf:"bytes,4,opt,name=info,proto3" json:"info"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` + PlatformMediaUuid string `protobuf:"bytes,3,opt,name=platformMediaUuid,proto3" json:"platformMediaUuid"` + Info string `protobuf:"bytes,4,opt,name=info,proto3" json:"info"` } func (x *PublishMediaInfoResp) Reset() { *x = PublishMediaInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[54] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[56] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishMediaInfoResp) String() string { @@ -4113,8 +4536,8 @@ func (x *PublishMediaInfoResp) String() string { func (*PublishMediaInfoResp) ProtoMessage() {} func (x *PublishMediaInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[54] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[56] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4126,7 +4549,7 @@ func (x *PublishMediaInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use PublishMediaInfoResp.ProtoReflect.Descriptor instead. func (*PublishMediaInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{54} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{56} } func (x *PublishMediaInfoResp) GetWorkUuid() string { @@ -4160,25 +4583,28 @@ func (x *PublishMediaInfoResp) GetInfo() string { // 视频脚本相关消息定义 // 更新视频脚本请求 type UpdateVideoScriptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 - CreatorUuid string `protobuf:"bytes,4,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID - CreatorName string `protobuf:"bytes,5,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 - ArtistUuid string `protobuf:"bytes,6,opt,name=artistUuid,proto3" json:"artistUuid"` - ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` - ArtistNum string `protobuf:"bytes,8,opt,name=artistNum,proto3" json:"artistNum"` - ArtistName string `protobuf:"bytes,9,opt,name=artistName,proto3" json:"artistName"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 + CreatorUuid string `protobuf:"bytes,4,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID + CreatorName string `protobuf:"bytes,5,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 + ArtistUuid string `protobuf:"bytes,6,opt,name=artistUuid,proto3" json:"artistUuid"` + ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` + ArtistNum string `protobuf:"bytes,8,opt,name=artistNum,proto3" json:"artistNum"` + ArtistName string `protobuf:"bytes,9,opt,name=artistName,proto3" json:"artistName"` } func (x *UpdateVideoScriptReq) Reset() { *x = UpdateVideoScriptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[55] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[57] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateVideoScriptReq) String() string { @@ -4188,8 +4614,8 @@ func (x *UpdateVideoScriptReq) String() string { func (*UpdateVideoScriptReq) ProtoMessage() {} func (x *UpdateVideoScriptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[55] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[57] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4201,7 +4627,7 @@ func (x *UpdateVideoScriptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateVideoScriptReq.ProtoReflect.Descriptor instead. func (*UpdateVideoScriptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{55} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{57} } func (x *UpdateVideoScriptReq) GetUuid() string { @@ -4268,17 +4694,20 @@ func (x *UpdateVideoScriptReq) GetArtistName() string { } type UpdateVideoScriptResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID } func (x *UpdateVideoScriptResp) Reset() { *x = UpdateVideoScriptResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[56] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[58] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateVideoScriptResp) String() string { @@ -4288,8 +4717,8 @@ func (x *UpdateVideoScriptResp) String() string { func (*UpdateVideoScriptResp) ProtoMessage() {} func (x *UpdateVideoScriptResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[56] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[58] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4301,7 +4730,7 @@ func (x *UpdateVideoScriptResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateVideoScriptResp.ProtoReflect.Descriptor instead. func (*UpdateVideoScriptResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{56} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{58} } func (x *UpdateVideoScriptResp) GetUuid() string { @@ -4313,17 +4742,20 @@ func (x *UpdateVideoScriptResp) GetUuid() string { // 获取视频脚本详情请求 type GetVideoScriptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID } func (x *GetVideoScriptReq) Reset() { *x = GetVideoScriptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[57] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[59] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetVideoScriptReq) String() string { @@ -4333,8 +4765,8 @@ func (x *GetVideoScriptReq) String() string { func (*GetVideoScriptReq) ProtoMessage() {} func (x *GetVideoScriptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[57] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[59] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4346,7 +4778,7 @@ func (x *GetVideoScriptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetVideoScriptReq.ProtoReflect.Descriptor instead. func (*GetVideoScriptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{57} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{59} } func (x *GetVideoScriptReq) GetUuid() string { @@ -4357,29 +4789,32 @@ func (x *GetVideoScriptReq) GetUuid() string { } type GetVideoScriptResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 - Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态 - ArtistUuid string `protobuf:"bytes,5,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 - ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人名称 - CreatorUuid string `protobuf:"bytes,8,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID - CreatorName string `protobuf:"bytes,9,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 - QuoteCount int32 `protobuf:"varint,10,opt,name=quoteCount,proto3" json:"quoteCount"` - ArtistNum string `protobuf:"bytes,11,opt,name=artistNum,proto3" json:"artistNum"` - Remark string `protobuf:"bytes,12,opt,name=remark,proto3" json:"remark"` - ApprovalID string `protobuf:"bytes,13,opt,name=approvalID,proto3" json:"approvalID"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 + Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态 + ArtistUuid string `protobuf:"bytes,5,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 + ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人名称 + CreatorUuid string `protobuf:"bytes,8,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID + CreatorName string `protobuf:"bytes,9,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 + QuoteCount int32 `protobuf:"varint,10,opt,name=quoteCount,proto3" json:"quoteCount"` + ArtistNum string `protobuf:"bytes,11,opt,name=artistNum,proto3" json:"artistNum"` + Remark string `protobuf:"bytes,12,opt,name=remark,proto3" json:"remark"` + ApprovalID string `protobuf:"bytes,13,opt,name=approvalID,proto3" json:"approvalID"` } func (x *GetVideoScriptResp) Reset() { *x = GetVideoScriptResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[58] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[60] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetVideoScriptResp) String() string { @@ -4389,8 +4824,8 @@ func (x *GetVideoScriptResp) String() string { func (*GetVideoScriptResp) ProtoMessage() {} func (x *GetVideoScriptResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[58] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[60] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4402,7 +4837,7 @@ func (x *GetVideoScriptResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetVideoScriptResp.ProtoReflect.Descriptor instead. func (*GetVideoScriptResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{58} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{60} } func (x *GetVideoScriptResp) GetUuid() string { @@ -4498,25 +4933,28 @@ func (x *GetVideoScriptResp) GetApprovalID() string { // 获取视频脚本列表请求 type ListVideoScriptsReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` // 标题关键字 - Status uint32 `protobuf:"varint,2,opt,name=status,proto3" json:"status"` // 状态 - ArtistKeywords string `protobuf:"bytes,3,opt,name=artistKeywords,proto3" json:"artistKeywords"` // 艺人 - CreatorKeywords string `protobuf:"bytes,4,opt,name=creatorKeywords,proto3" json:"creatorKeywords"` // 创建人 - CreateStartDate string `protobuf:"bytes,5,opt,name=createStartDate,proto3" json:"createStartDate"` - CreateEndDate string `protobuf:"bytes,6,opt,name=createEndDate,proto3" json:"createEndDate"` - Page int32 `protobuf:"varint,7,opt,name=page,proto3" json:"page"` - PageSize int32 `protobuf:"varint,8,opt,name=pageSize,proto3" json:"pageSize"` - ArtistUuid string `protobuf:"bytes,9,opt,name=artistUuid,proto3" json:"artistUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` // 标题关键字 + Status uint32 `protobuf:"varint,2,opt,name=status,proto3" json:"status"` // 状态 + ArtistKeywords string `protobuf:"bytes,3,opt,name=artistKeywords,proto3" json:"artistKeywords"` // 艺人 + CreatorKeywords string `protobuf:"bytes,4,opt,name=creatorKeywords,proto3" json:"creatorKeywords"` // 创建人 + CreateStartDate string `protobuf:"bytes,5,opt,name=createStartDate,proto3" json:"createStartDate"` + CreateEndDate string `protobuf:"bytes,6,opt,name=createEndDate,proto3" json:"createEndDate"` + Page int32 `protobuf:"varint,7,opt,name=page,proto3" json:"page"` + PageSize int32 `protobuf:"varint,8,opt,name=pageSize,proto3" json:"pageSize"` + ArtistUuid string `protobuf:"bytes,9,opt,name=artistUuid,proto3" json:"artistUuid"` } func (x *ListVideoScriptsReq) Reset() { *x = ListVideoScriptsReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[59] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[61] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListVideoScriptsReq) String() string { @@ -4526,8 +4964,8 @@ func (x *ListVideoScriptsReq) String() string { func (*ListVideoScriptsReq) ProtoMessage() {} func (x *ListVideoScriptsReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[59] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[61] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4539,7 +4977,7 @@ func (x *ListVideoScriptsReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ListVideoScriptsReq.ProtoReflect.Descriptor instead. func (*ListVideoScriptsReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{59} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{61} } func (x *ListVideoScriptsReq) GetTitle() string { @@ -4606,30 +5044,33 @@ func (x *ListVideoScriptsReq) GetArtistUuid() string { } type VideoScriptInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 - ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 - ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人名称 - QuoteCount int32 `protobuf:"varint,7,opt,name=quoteCount,proto3" json:"quoteCount"` - CreatorUuid string `protobuf:"bytes,8,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID - CreatorName string `protobuf:"bytes,9,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 - Status uint32 `protobuf:"varint,10,opt,name=status,proto3" json:"status"` // 状态 - CreatedDate string `protobuf:"bytes,11,opt,name=createdDate,proto3" json:"createdDate"` // 创建时间 - ArtistNum string `protobuf:"bytes,12,opt,name=artistNum,proto3" json:"artistNum"` - Remark string `protobuf:"bytes,13,opt,name=remark,proto3" json:"remark"` - Success bool `protobuf:"varint,14,opt,name=success,proto3" json:"success"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 + ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 + ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人名称 + QuoteCount int32 `protobuf:"varint,7,opt,name=quoteCount,proto3" json:"quoteCount"` + CreatorUuid string `protobuf:"bytes,8,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID + CreatorName string `protobuf:"bytes,9,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 + Status uint32 `protobuf:"varint,10,opt,name=status,proto3" json:"status"` // 状态 + CreatedDate string `protobuf:"bytes,11,opt,name=createdDate,proto3" json:"createdDate"` // 创建时间 + ArtistNum string `protobuf:"bytes,12,opt,name=artistNum,proto3" json:"artistNum"` + Remark string `protobuf:"bytes,13,opt,name=remark,proto3" json:"remark"` + Success bool `protobuf:"varint,14,opt,name=success,proto3" json:"success"` } func (x *VideoScriptInfo) Reset() { *x = VideoScriptInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[60] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[62] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *VideoScriptInfo) String() string { @@ -4639,8 +5080,8 @@ func (x *VideoScriptInfo) String() string { func (*VideoScriptInfo) ProtoMessage() {} func (x *VideoScriptInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[60] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[62] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4652,7 +5093,7 @@ func (x *VideoScriptInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use VideoScriptInfo.ProtoReflect.Descriptor instead. func (*VideoScriptInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{60} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{62} } func (x *VideoScriptInfo) GetUuid() string { @@ -4754,18 +5195,21 @@ func (x *VideoScriptInfo) GetSuccess() bool { } type ListVideoScriptsResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` } func (x *ListVideoScriptsResp) Reset() { *x = ListVideoScriptsResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[61] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[63] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListVideoScriptsResp) String() string { @@ -4775,8 +5219,8 @@ func (x *ListVideoScriptsResp) String() string { func (*ListVideoScriptsResp) ProtoMessage() {} func (x *ListVideoScriptsResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[61] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[63] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4788,7 +5232,7 @@ func (x *ListVideoScriptsResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ListVideoScriptsResp.ProtoReflect.Descriptor instead. func (*ListVideoScriptsResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{61} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{63} } func (x *ListVideoScriptsResp) GetData() []*VideoScriptInfo { @@ -4807,17 +5251,20 @@ func (x *ListVideoScriptsResp) GetCount() int64 { // 删除视频脚本请求 type DeleteVideoScriptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID } func (x *DeleteVideoScriptReq) Reset() { *x = DeleteVideoScriptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[62] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[64] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DeleteVideoScriptReq) String() string { @@ -4827,8 +5274,8 @@ func (x *DeleteVideoScriptReq) String() string { func (*DeleteVideoScriptReq) ProtoMessage() {} func (x *DeleteVideoScriptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[62] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[64] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4840,7 +5287,7 @@ func (x *DeleteVideoScriptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteVideoScriptReq.ProtoReflect.Descriptor instead. func (*DeleteVideoScriptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{62} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{64} } func (x *DeleteVideoScriptReq) GetUuid() string { @@ -4851,17 +5298,20 @@ func (x *DeleteVideoScriptReq) GetUuid() string { } type UpdateVideoScriptBatchReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` } func (x *UpdateVideoScriptBatchReq) Reset() { *x = UpdateVideoScriptBatchReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[63] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[65] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateVideoScriptBatchReq) String() string { @@ -4871,8 +5321,8 @@ func (x *UpdateVideoScriptBatchReq) String() string { func (*UpdateVideoScriptBatchReq) ProtoMessage() {} func (x *UpdateVideoScriptBatchReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[63] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[65] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4884,7 +5334,7 @@ func (x *UpdateVideoScriptBatchReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateVideoScriptBatchReq.ProtoReflect.Descriptor instead. func (*UpdateVideoScriptBatchReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{63} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{65} } func (x *UpdateVideoScriptBatchReq) GetData() []*VideoScriptInfo { @@ -4895,19 +5345,22 @@ func (x *UpdateVideoScriptBatchReq) GetData() []*VideoScriptInfo { } type UpdateVideoScriptBatchResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` - FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` + SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` + FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` } func (x *UpdateVideoScriptBatchResp) Reset() { *x = UpdateVideoScriptBatchResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[64] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[66] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateVideoScriptBatchResp) String() string { @@ -4917,8 +5370,8 @@ func (x *UpdateVideoScriptBatchResp) String() string { func (*UpdateVideoScriptBatchResp) ProtoMessage() {} func (x *UpdateVideoScriptBatchResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[64] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[66] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4930,7 +5383,7 @@ func (x *UpdateVideoScriptBatchResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateVideoScriptBatchResp.ProtoReflect.Descriptor instead. func (*UpdateVideoScriptBatchResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{64} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{66} } func (x *UpdateVideoScriptBatchResp) GetData() []*VideoScriptInfo { @@ -4955,20 +5408,23 @@ func (x *UpdateVideoScriptBatchResp) GetFailCount() int32 { } type UpdateScriptStatusReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` - Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid"` - ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` - ApprovalReply string `protobuf:"bytes,4,opt,name=approvalReply,proto3" json:"approvalReply"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` + Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid"` + ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` + ApprovalReply string `protobuf:"bytes,4,opt,name=approvalReply,proto3" json:"approvalReply"` } func (x *UpdateScriptStatusReq) Reset() { *x = UpdateScriptStatusReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[65] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[67] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateScriptStatusReq) String() string { @@ -4978,8 +5434,8 @@ func (x *UpdateScriptStatusReq) String() string { func (*UpdateScriptStatusReq) ProtoMessage() {} func (x *UpdateScriptStatusReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[65] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[67] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4991,7 +5447,7 @@ func (x *UpdateScriptStatusReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateScriptStatusReq.ProtoReflect.Descriptor instead. func (*UpdateScriptStatusReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{65} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{67} } func (x *UpdateScriptStatusReq) GetWorkAction() WorkActionENUM { @@ -5023,19 +5479,22 @@ func (x *UpdateScriptStatusReq) GetApprovalReply() string { } type SetLayoutReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Data string `protobuf:"bytes,2,opt,name=data,proto3" json:"data"` - FormName string `protobuf:"bytes,3,opt,name=formName,proto3" json:"formName"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Data string `protobuf:"bytes,2,opt,name=data,proto3" json:"data"` + FormName string `protobuf:"bytes,3,opt,name=formName,proto3" json:"formName"` } func (x *SetLayoutReq) Reset() { *x = SetLayoutReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[66] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[68] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *SetLayoutReq) String() string { @@ -5045,8 +5504,8 @@ func (x *SetLayoutReq) String() string { func (*SetLayoutReq) ProtoMessage() {} func (x *SetLayoutReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[66] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[68] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5058,7 +5517,7 @@ func (x *SetLayoutReq) ProtoReflect() protoreflect.Message { // Deprecated: Use SetLayoutReq.ProtoReflect.Descriptor instead. func (*SetLayoutReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{66} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{68} } func (x *SetLayoutReq) GetUserID() string { @@ -5083,18 +5542,21 @@ func (x *SetLayoutReq) GetFormName() string { } type GetLayoutReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - FormName string `protobuf:"bytes,2,opt,name=formName,proto3" json:"formName"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + FormName string `protobuf:"bytes,2,opt,name=formName,proto3" json:"formName"` } func (x *GetLayoutReq) Reset() { *x = GetLayoutReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[67] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[69] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetLayoutReq) String() string { @@ -5104,8 +5566,8 @@ func (x *GetLayoutReq) String() string { func (*GetLayoutReq) ProtoMessage() {} func (x *GetLayoutReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[67] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[69] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5117,7 +5579,7 @@ func (x *GetLayoutReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetLayoutReq.ProtoReflect.Descriptor instead. func (*GetLayoutReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{67} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{69} } func (x *GetLayoutReq) GetUserID() string { @@ -5135,18 +5597,21 @@ func (x *GetLayoutReq) GetFormName() string { } type GetLayoutResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data string `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` - FormName string `protobuf:"bytes,3,opt,name=formName,proto3" json:"formName"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data string `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` + FormName string `protobuf:"bytes,3,opt,name=formName,proto3" json:"formName"` } func (x *GetLayoutResp) Reset() { *x = GetLayoutResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[68] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[70] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetLayoutResp) String() string { @@ -5156,8 +5621,8 @@ func (x *GetLayoutResp) String() string { func (*GetLayoutResp) ProtoMessage() {} func (x *GetLayoutResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[68] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[70] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5169,7 +5634,7 @@ func (x *GetLayoutResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetLayoutResp.ProtoReflect.Descriptor instead. func (*GetLayoutResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{68} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{70} } func (x *GetLayoutResp) GetData() string { @@ -5188,19 +5653,22 @@ func (x *GetLayoutResp) GetFormName() string { // 关键词相关消息定义 type UpdatePromptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID - Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 - Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID + Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 + Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 } func (x *UpdatePromptReq) Reset() { *x = UpdatePromptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[69] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[71] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdatePromptReq) String() string { @@ -5210,8 +5678,8 @@ func (x *UpdatePromptReq) String() string { func (*UpdatePromptReq) ProtoMessage() {} func (x *UpdatePromptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[69] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[71] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5223,7 +5691,7 @@ func (x *UpdatePromptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdatePromptReq.ProtoReflect.Descriptor instead. func (*UpdatePromptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{69} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{71} } func (x *UpdatePromptReq) GetPromptUuid() string { @@ -5248,17 +5716,20 @@ func (x *UpdatePromptReq) GetCategory() CategoryENUM { } type DeletePromptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID } func (x *DeletePromptReq) Reset() { *x = DeletePromptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[70] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[72] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DeletePromptReq) String() string { @@ -5268,8 +5739,8 @@ func (x *DeletePromptReq) String() string { func (*DeletePromptReq) ProtoMessage() {} func (x *DeletePromptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[70] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[72] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5281,7 +5752,7 @@ func (x *DeletePromptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DeletePromptReq.ProtoReflect.Descriptor instead. func (*DeletePromptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{70} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{72} } func (x *DeletePromptReq) GetPromptUuid() string { @@ -5292,17 +5763,20 @@ func (x *DeletePromptReq) GetPromptUuid() string { } type GetPromptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID } func (x *GetPromptReq) Reset() { *x = GetPromptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[71] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[73] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetPromptReq) String() string { @@ -5312,8 +5786,8 @@ func (x *GetPromptReq) String() string { func (*GetPromptReq) ProtoMessage() {} func (x *GetPromptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[71] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[73] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5325,7 +5799,7 @@ func (x *GetPromptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetPromptReq.ProtoReflect.Descriptor instead. func (*GetPromptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{71} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{73} } func (x *GetPromptReq) GetPromptUuid() string { @@ -5336,20 +5810,23 @@ func (x *GetPromptReq) GetPromptUuid() string { } type GetPromptResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID - Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 - Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 - UseCount uint32 `protobuf:"varint,4,opt,name=useCount,proto3" json:"useCount"` // 使用次数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID + Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 + Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 + UseCount uint32 `protobuf:"varint,4,opt,name=useCount,proto3" json:"useCount"` // 使用次数 } func (x *GetPromptResp) Reset() { *x = GetPromptResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[72] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[74] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetPromptResp) String() string { @@ -5359,8 +5836,8 @@ func (x *GetPromptResp) String() string { func (*GetPromptResp) ProtoMessage() {} func (x *GetPromptResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[72] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[74] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5372,7 +5849,7 @@ func (x *GetPromptResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetPromptResp.ProtoReflect.Descriptor instead. func (*GetPromptResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{72} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{74} } func (x *GetPromptResp) GetPromptUuid() string { @@ -5404,21 +5881,26 @@ func (x *GetPromptResp) GetUseCount() uint32 { } type ListPromptsReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Prompt string `protobuf:"bytes,1,opt,name=prompt,proto3" json:"prompt"` // 关键词搜索 - Category CategoryENUM `protobuf:"varint,2,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类筛选 - Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - Rand bool `protobuf:"varint,5,opt,name=rand,proto3" json:"rand"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Prompt string `protobuf:"bytes,1,opt,name=prompt,proto3" json:"prompt"` // 关键词搜索 + Category CategoryENUM `protobuf:"varint,2,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类筛选 + Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 + Rand bool `protobuf:"varint,5,opt,name=rand,proto3" json:"rand"` + StartUseCount uint32 `protobuf:"varint,6,opt,name=startUseCount,proto3" json:"startUseCount"` + EndUseCount uint32 `protobuf:"varint,7,opt,name=endUseCount,proto3" json:"endUseCount"` } func (x *ListPromptsReq) Reset() { *x = ListPromptsReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[73] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[75] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListPromptsReq) String() string { @@ -5428,8 +5910,8 @@ func (x *ListPromptsReq) String() string { func (*ListPromptsReq) ProtoMessage() {} func (x *ListPromptsReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[73] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[75] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5441,7 +5923,7 @@ func (x *ListPromptsReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ListPromptsReq.ProtoReflect.Descriptor instead. func (*ListPromptsReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{73} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{75} } func (x *ListPromptsReq) GetPrompt() string { @@ -5479,25 +5961,42 @@ func (x *ListPromptsReq) GetRand() bool { return false } +func (x *ListPromptsReq) GetStartUseCount() uint32 { + if x != nil { + return x.StartUseCount + } + return 0 +} + +func (x *ListPromptsReq) GetEndUseCount() uint32 { + if x != nil { + return x.EndUseCount + } + return 0 +} + type PromptInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID - Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 - Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 - Remark string `protobuf:"bytes,4,opt,name=remark,proto3" json:"remark"` // 备注 - Success bool `protobuf:"varint,5,opt,name=success,proto3" json:"success"` // 是否更新成功 - UseCount uint32 `protobuf:"varint,6,opt,name=useCount,proto3" json:"useCount"` // 使用次数 - LineNo uint32 `protobuf:"varint,7,opt,name=lineNo,proto3" json:"lineNo"` // 行号 - CreatedDate string `protobuf:"bytes,8,opt,name=createdDate,proto3" json:"createdDate"` // 创建时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID + Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 + Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 + Remark string `protobuf:"bytes,4,opt,name=remark,proto3" json:"remark"` // 备注 + Success bool `protobuf:"varint,5,opt,name=success,proto3" json:"success"` // 是否更新成功 + UseCount uint32 `protobuf:"varint,6,opt,name=useCount,proto3" json:"useCount"` // 使用次数 + LineNo uint32 `protobuf:"varint,7,opt,name=lineNo,proto3" json:"lineNo"` // 行号 + CreatedDate string `protobuf:"bytes,8,opt,name=createdDate,proto3" json:"createdDate"` // 创建时间 } func (x *PromptInfo) Reset() { *x = PromptInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[74] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[76] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PromptInfo) String() string { @@ -5507,8 +6006,8 @@ func (x *PromptInfo) String() string { func (*PromptInfo) ProtoMessage() {} func (x *PromptInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[74] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[76] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5520,7 +6019,7 @@ func (x *PromptInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use PromptInfo.ProtoReflect.Descriptor instead. func (*PromptInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{74} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{76} } func (x *PromptInfo) GetPromptUuid() string { @@ -5580,18 +6079,21 @@ func (x *PromptInfo) GetCreatedDate() string { } type ListPromptsResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *ListPromptsResp) Reset() { *x = ListPromptsResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[75] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[77] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListPromptsResp) String() string { @@ -5601,8 +6103,8 @@ func (x *ListPromptsResp) String() string { func (*ListPromptsResp) ProtoMessage() {} func (x *ListPromptsResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[75] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[77] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5614,7 +6116,7 @@ func (x *ListPromptsResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ListPromptsResp.ProtoReflect.Descriptor instead. func (*ListPromptsResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{75} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{77} } func (x *ListPromptsResp) GetData() []*PromptInfo { @@ -5632,17 +6134,20 @@ func (x *ListPromptsResp) GetCount() int64 { } type UpdatePromptBatchReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 } func (x *UpdatePromptBatchReq) Reset() { *x = UpdatePromptBatchReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[76] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[78] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdatePromptBatchReq) String() string { @@ -5652,8 +6157,8 @@ func (x *UpdatePromptBatchReq) String() string { func (*UpdatePromptBatchReq) ProtoMessage() {} func (x *UpdatePromptBatchReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[76] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[78] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5665,7 +6170,7 @@ func (x *UpdatePromptBatchReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdatePromptBatchReq.ProtoReflect.Descriptor instead. func (*UpdatePromptBatchReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{76} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{78} } func (x *UpdatePromptBatchReq) GetData() []*PromptInfo { @@ -5676,19 +6181,22 @@ func (x *UpdatePromptBatchReq) GetData() []*PromptInfo { } type UpdatePromptBatchResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 - SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` // 成功数量 - FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` // 失败数量 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 + SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` // 成功数量 + FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` // 失败数量 } func (x *UpdatePromptBatchResp) Reset() { *x = UpdatePromptBatchResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[77] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[79] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdatePromptBatchResp) String() string { @@ -5698,8 +6206,8 @@ func (x *UpdatePromptBatchResp) String() string { func (*UpdatePromptBatchResp) ProtoMessage() {} func (x *UpdatePromptBatchResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[77] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[79] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5711,7 +6219,7 @@ func (x *UpdatePromptBatchResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdatePromptBatchResp.ProtoReflect.Descriptor instead. func (*UpdatePromptBatchResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{77} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{79} } func (x *UpdatePromptBatchResp) GetData() []*PromptInfo { @@ -5737,20 +6245,23 @@ func (x *UpdatePromptBatchResp) GetFailCount() int32 { // 艺人相关接口 type ArtistInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - RefID string `protobuf:"bytes,2,opt,name=refID,proto3" json:"refID"` // 艺人名称 - ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` // 艺人手机号 - SubNum string `protobuf:"bytes,4,opt,name=subNum,proto3" json:"subNum"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + RefID string `protobuf:"bytes,2,opt,name=refID,proto3" json:"refID"` // 艺人名称 + ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` // 艺人手机号 + SubNum string `protobuf:"bytes,4,opt,name=subNum,proto3" json:"subNum"` } func (x *ArtistInfo) Reset() { *x = ArtistInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[78] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[80] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistInfo) String() string { @@ -5760,8 +6271,8 @@ func (x *ArtistInfo) String() string { func (*ArtistInfo) ProtoMessage() {} func (x *ArtistInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[78] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[80] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5773,7 +6284,7 @@ func (x *ArtistInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistInfo.ProtoReflect.Descriptor instead. func (*ArtistInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{78} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{80} } func (x *ArtistInfo) GetArtistUuid() string { @@ -5805,18 +6316,21 @@ func (x *ArtistInfo) GetSubNum() string { } type UpdateArtistReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistInfo *ArtistInfo `protobuf:"bytes,1,opt,name=artistInfo,proto3" json:"artistInfo"` - Uuid string `protobuf:"bytes,2,opt,name=Uuid,proto3" json:"Uuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistInfo *ArtistInfo `protobuf:"bytes,1,opt,name=artistInfo,proto3" json:"artistInfo"` + Uuid string `protobuf:"bytes,2,opt,name=Uuid,proto3" json:"Uuid"` } func (x *UpdateArtistReq) Reset() { *x = UpdateArtistReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[79] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[81] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateArtistReq) String() string { @@ -5826,8 +6340,8 @@ func (x *UpdateArtistReq) String() string { func (*UpdateArtistReq) ProtoMessage() {} func (x *UpdateArtistReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[79] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[81] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5839,7 +6353,7 @@ func (x *UpdateArtistReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateArtistReq.ProtoReflect.Descriptor instead. func (*UpdateArtistReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{79} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{81} } func (x *UpdateArtistReq) GetArtistInfo() *ArtistInfo { @@ -5857,17 +6371,20 @@ func (x *UpdateArtistReq) GetUuid() string { } type UpdateArtistResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID } func (x *UpdateArtistResp) Reset() { *x = UpdateArtistResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[80] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[82] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateArtistResp) String() string { @@ -5877,8 +6394,8 @@ func (x *UpdateArtistResp) String() string { func (*UpdateArtistResp) ProtoMessage() {} func (x *UpdateArtistResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[80] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[82] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5890,7 +6407,7 @@ func (x *UpdateArtistResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateArtistResp.ProtoReflect.Descriptor instead. func (*UpdateArtistResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{80} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{82} } func (x *UpdateArtistResp) GetArtistUuid() string { @@ -5901,17 +6418,20 @@ func (x *UpdateArtistResp) GetArtistUuid() string { } type GetArtistReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID } func (x *GetArtistReq) Reset() { *x = GetArtistReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[81] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[83] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetArtistReq) String() string { @@ -5921,8 +6441,8 @@ func (x *GetArtistReq) String() string { func (*GetArtistReq) ProtoMessage() {} func (x *GetArtistReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[81] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[83] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5934,7 +6454,7 @@ func (x *GetArtistReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetArtistReq.ProtoReflect.Descriptor instead. func (*GetArtistReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{81} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{83} } func (x *GetArtistReq) GetArtistUuid() string { @@ -5945,18 +6465,21 @@ func (x *GetArtistReq) GetArtistUuid() string { } type GetArtistResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistInfo *ArtistInfo `protobuf:"bytes,1,opt,name=artistInfo,proto3" json:"artistInfo"` - Uuid string `protobuf:"bytes,2,opt,name=Uuid,proto3" json:"Uuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistInfo *ArtistInfo `protobuf:"bytes,1,opt,name=artistInfo,proto3" json:"artistInfo"` + Uuid string `protobuf:"bytes,2,opt,name=Uuid,proto3" json:"Uuid"` } func (x *GetArtistResp) Reset() { *x = GetArtistResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[82] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[84] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetArtistResp) String() string { @@ -5966,8 +6489,8 @@ func (x *GetArtistResp) String() string { func (*GetArtistResp) ProtoMessage() {} func (x *GetArtistResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[82] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[84] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5979,7 +6502,7 @@ func (x *GetArtistResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetArtistResp.ProtoReflect.Descriptor instead. func (*GetArtistResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{82} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{84} } func (x *GetArtistResp) GetArtistInfo() *ArtistInfo { @@ -5998,40 +6521,43 @@ func (x *GetArtistResp) GetUuid() string { // 作品分析相关消息定义 type CreateWorkAnalysisReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistID string `protobuf:"bytes,4,opt,name=artistID,proto3" json:"artistID"` // 艺人ID - ArtistPhone string `protobuf:"bytes,5,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - Analysis string `protobuf:"bytes,6,opt,name=analysis,proto3" json:"analysis"` // 分析内容 - Title string `protobuf:"bytes,7,opt,name=title,proto3" json:"title"` // 标题 - PdfUrl string `protobuf:"bytes,8,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 - MediaAccountCount int32 `protobuf:"varint,9,opt,name=mediaAccountCount,proto3" json:"mediaAccountCount"` // 当前账号数 - WorkVideoCount int32 `protobuf:"varint,10,opt,name=workVideoCount,proto3" json:"workVideoCount"` // 当前发布视频数 - WorkImageCount int32 `protobuf:"varint,11,opt,name=workImageCount,proto3" json:"workImageCount"` // 当前发布图文数 - Views int32 `protobuf:"varint,12,opt,name=views,proto3" json:"views"` // 是否开启浏览/播放量统计 0 关闭 1 开启 - Likes int32 `protobuf:"varint,13,opt,name=likes,proto3" json:"likes"` // 是否开启点赞数统计 0 关闭 1 开启 - Comments int32 `protobuf:"varint,14,opt,name=comments,proto3" json:"comments"` // 是否开启评论数统计 0 关闭 1 开启 - Shares int32 `protobuf:"varint,15,opt,name=shares,proto3" json:"shares"` // 是否开启分享数统计 0 关闭 1 开启 - FansCount int32 `protobuf:"varint,16,opt,name=fansCount,proto3" json:"fansCount"` // 是否开启粉丝数统计 0 关闭 1 开启 - TopCities int32 `protobuf:"varint,17,opt,name=topCities,proto3" json:"topCities"` // 是否开启Top城市统计 0 关闭 1 开启 - MostActiveDay int32 `protobuf:"varint,18,opt,name=mostActiveDay,proto3" json:"mostActiveDay"` // 是否开启最活跃日统计 0 关闭 1 开启 - BestPostTime int32 `protobuf:"varint,19,opt,name=bestPostTime,proto3" json:"bestPostTime"` // 是否开启最佳发布时间统计 0 关闭 1 开启 - PeriodTypeFans uint32 `protobuf:"varint,21,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 - PeriodTypeViews uint32 `protobuf:"varint,22,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 - PeriodTypeLikes uint32 `protobuf:"varint,23,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 - PeriodTypeComments uint32 `protobuf:"varint,24,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 - PeriodTypeShares uint32 `protobuf:"varint,25,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID + SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistID string `protobuf:"bytes,4,opt,name=artistID,proto3" json:"artistID"` // 艺人ID + ArtistPhone string `protobuf:"bytes,5,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + Analysis string `protobuf:"bytes,6,opt,name=analysis,proto3" json:"analysis"` // 分析内容 + Title string `protobuf:"bytes,7,opt,name=title,proto3" json:"title"` // 标题 + PdfUrl string `protobuf:"bytes,8,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 + MediaAccountCount int32 `protobuf:"varint,9,opt,name=mediaAccountCount,proto3" json:"mediaAccountCount"` // 当前账号数 + WorkVideoCount int32 `protobuf:"varint,10,opt,name=workVideoCount,proto3" json:"workVideoCount"` // 当前发布视频数 + WorkImageCount int32 `protobuf:"varint,11,opt,name=workImageCount,proto3" json:"workImageCount"` // 当前发布图文数 + Views int32 `protobuf:"varint,12,opt,name=views,proto3" json:"views"` // 是否开启浏览/播放量统计 0 关闭 1 开启 + Likes int32 `protobuf:"varint,13,opt,name=likes,proto3" json:"likes"` // 是否开启点赞数统计 0 关闭 1 开启 + Comments int32 `protobuf:"varint,14,opt,name=comments,proto3" json:"comments"` // 是否开启评论数统计 0 关闭 1 开启 + Shares int32 `protobuf:"varint,15,opt,name=shares,proto3" json:"shares"` // 是否开启分享数统计 0 关闭 1 开启 + FansCount int32 `protobuf:"varint,16,opt,name=fansCount,proto3" json:"fansCount"` // 是否开启粉丝数统计 0 关闭 1 开启 + TopCities int32 `protobuf:"varint,17,opt,name=topCities,proto3" json:"topCities"` // 是否开启Top城市统计 0 关闭 1 开启 + MostActiveDay int32 `protobuf:"varint,18,opt,name=mostActiveDay,proto3" json:"mostActiveDay"` // 是否开启最活跃日统计 0 关闭 1 开启 + BestPostTime int32 `protobuf:"varint,19,opt,name=bestPostTime,proto3" json:"bestPostTime"` // 是否开启最佳发布时间统计 0 关闭 1 开启 + PeriodTypeFans uint32 `protobuf:"varint,21,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 + PeriodTypeViews uint32 `protobuf:"varint,22,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 + PeriodTypeLikes uint32 `protobuf:"varint,23,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 + PeriodTypeComments uint32 `protobuf:"varint,24,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 + PeriodTypeShares uint32 `protobuf:"varint,25,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 } func (x *CreateWorkAnalysisReq) Reset() { *x = CreateWorkAnalysisReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[83] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[85] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *CreateWorkAnalysisReq) String() string { @@ -6041,8 +6567,8 @@ func (x *CreateWorkAnalysisReq) String() string { func (*CreateWorkAnalysisReq) ProtoMessage() {} func (x *CreateWorkAnalysisReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[83] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[85] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6054,7 +6580,7 @@ func (x *CreateWorkAnalysisReq) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateWorkAnalysisReq.ProtoReflect.Descriptor instead. func (*CreateWorkAnalysisReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{83} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{85} } func (x *CreateWorkAnalysisReq) GetUuid() string { @@ -6226,17 +6752,20 @@ func (x *CreateWorkAnalysisReq) GetPeriodTypeShares() uint32 { } type CreateWorkAnalysisResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID } func (x *CreateWorkAnalysisResp) Reset() { *x = CreateWorkAnalysisResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[84] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[86] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *CreateWorkAnalysisResp) String() string { @@ -6246,8 +6775,8 @@ func (x *CreateWorkAnalysisResp) String() string { func (*CreateWorkAnalysisResp) ProtoMessage() {} func (x *CreateWorkAnalysisResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[84] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[86] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6259,7 +6788,7 @@ func (x *CreateWorkAnalysisResp) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateWorkAnalysisResp.ProtoReflect.Descriptor instead. func (*CreateWorkAnalysisResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{84} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{86} } func (x *CreateWorkAnalysisResp) GetUuid() string { @@ -6270,37 +6799,40 @@ func (x *CreateWorkAnalysisResp) GetUuid() string { } type UpdateWorkAnalysisReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - Analysis string `protobuf:"bytes,2,opt,name=analysis,proto3" json:"analysis"` // 分析内容 - Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title"` // 标题 - PdfUrl string `protobuf:"bytes,4,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 - MediaAccountCount int32 `protobuf:"varint,5,opt,name=mediaAccountCount,proto3" json:"mediaAccountCount"` // 当前账号数 - WorkVideoCount int32 `protobuf:"varint,6,opt,name=workVideoCount,proto3" json:"workVideoCount"` // 当前发布视频数 - WorkImageCount int32 `protobuf:"varint,7,opt,name=workImageCount,proto3" json:"workImageCount"` // 当前发布图文数 - Views int32 `protobuf:"varint,8,opt,name=views,proto3" json:"views"` // 是否开启浏览/播放量统计 0 关闭 1 开启 - Likes int32 `protobuf:"varint,9,opt,name=likes,proto3" json:"likes"` // 是否开启点赞数统计 0 关闭 1 开启 - Comments int32 `protobuf:"varint,10,opt,name=comments,proto3" json:"comments"` // 是否开启评论数统计 0 关闭 1 开启 - Shares int32 `protobuf:"varint,11,opt,name=shares,proto3" json:"shares"` // 是否开启分享数统计 0 关闭 1 开启 - FansCount int32 `protobuf:"varint,12,opt,name=fansCount,proto3" json:"fansCount"` // 是否开启粉丝数统计 0 关闭 1 开启 - TopCities int32 `protobuf:"varint,13,opt,name=topCities,proto3" json:"topCities"` // 是否开启Top城市统计 0 关闭 1 开启 - MostActiveDay int32 `protobuf:"varint,14,opt,name=mostActiveDay,proto3" json:"mostActiveDay"` // 是否开启最活跃日统计 0 关闭 1 开启 - BestPostTime int32 `protobuf:"varint,15,opt,name=bestPostTime,proto3" json:"bestPostTime"` // 是否开启最佳发布时间统计 0 关闭 1 开启 - ArtistUUID string `protobuf:"bytes,16,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID - PeriodTypeFans uint32 `protobuf:"varint,17,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 - PeriodTypeViews uint32 `protobuf:"varint,18,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 - PeriodTypeLikes uint32 `protobuf:"varint,19,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 - PeriodTypeComments uint32 `protobuf:"varint,20,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 - PeriodTypeShares uint32 `protobuf:"varint,21,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID + Analysis string `protobuf:"bytes,2,opt,name=analysis,proto3" json:"analysis"` // 分析内容 + Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title"` // 标题 + PdfUrl string `protobuf:"bytes,4,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 + MediaAccountCount int32 `protobuf:"varint,5,opt,name=mediaAccountCount,proto3" json:"mediaAccountCount"` // 当前账号数 + WorkVideoCount int32 `protobuf:"varint,6,opt,name=workVideoCount,proto3" json:"workVideoCount"` // 当前发布视频数 + WorkImageCount int32 `protobuf:"varint,7,opt,name=workImageCount,proto3" json:"workImageCount"` // 当前发布图文数 + Views int32 `protobuf:"varint,8,opt,name=views,proto3" json:"views"` // 是否开启浏览/播放量统计 0 关闭 1 开启 + Likes int32 `protobuf:"varint,9,opt,name=likes,proto3" json:"likes"` // 是否开启点赞数统计 0 关闭 1 开启 + Comments int32 `protobuf:"varint,10,opt,name=comments,proto3" json:"comments"` // 是否开启评论数统计 0 关闭 1 开启 + Shares int32 `protobuf:"varint,11,opt,name=shares,proto3" json:"shares"` // 是否开启分享数统计 0 关闭 1 开启 + FansCount int32 `protobuf:"varint,12,opt,name=fansCount,proto3" json:"fansCount"` // 是否开启粉丝数统计 0 关闭 1 开启 + TopCities int32 `protobuf:"varint,13,opt,name=topCities,proto3" json:"topCities"` // 是否开启Top城市统计 0 关闭 1 开启 + MostActiveDay int32 `protobuf:"varint,14,opt,name=mostActiveDay,proto3" json:"mostActiveDay"` // 是否开启最活跃日统计 0 关闭 1 开启 + BestPostTime int32 `protobuf:"varint,15,opt,name=bestPostTime,proto3" json:"bestPostTime"` // 是否开启最佳发布时间统计 0 关闭 1 开启 + ArtistUUID string `protobuf:"bytes,16,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID + PeriodTypeFans uint32 `protobuf:"varint,17,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 + PeriodTypeViews uint32 `protobuf:"varint,18,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 + PeriodTypeLikes uint32 `protobuf:"varint,19,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 + PeriodTypeComments uint32 `protobuf:"varint,20,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 + PeriodTypeShares uint32 `protobuf:"varint,21,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 } func (x *UpdateWorkAnalysisReq) Reset() { *x = UpdateWorkAnalysisReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[85] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[87] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkAnalysisReq) String() string { @@ -6310,8 +6842,8 @@ func (x *UpdateWorkAnalysisReq) String() string { func (*UpdateWorkAnalysisReq) ProtoMessage() {} func (x *UpdateWorkAnalysisReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[85] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[87] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6323,7 +6855,7 @@ func (x *UpdateWorkAnalysisReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkAnalysisReq.ProtoReflect.Descriptor instead. func (*UpdateWorkAnalysisReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{85} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{87} } func (x *UpdateWorkAnalysisReq) GetUuid() string { @@ -6474,23 +7006,27 @@ func (x *UpdateWorkAnalysisReq) GetPeriodTypeShares() uint32 { } type UpdateWorkAnalysisStatusReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` // 操作类型 - Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID - ApprovalReply string `protobuf:"bytes,4,opt,name=approvalReply,proto3" json:"approvalReply"` // 审批回复 - ConfirmRemark string `protobuf:"bytes,5,opt,name=confirmRemark,proto3" json:"confirmRemark"` // 确认备注 - ConfirmStatus uint32 `protobuf:"varint,6,opt,name=confirmStatus,proto3" json:"confirmStatus"` // 确认状态 1 通过 2 驳回 3 失败 - CostType uint32 `protobuf:"varint,7,opt,name=costType,proto3" json:"costType"` // 计费类型 1 套餐 2 增值 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` // 操作类型 + Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid"` // 分析UUID + ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID + ApprovalReply string `protobuf:"bytes,4,opt,name=approvalReply,proto3" json:"approvalReply"` // 审批回复 + ConfirmRemark string `protobuf:"bytes,5,opt,name=confirmRemark,proto3" json:"confirmRemark"` // 确认备注 + ConfirmStatus uint32 `protobuf:"varint,6,opt,name=confirmStatus,proto3" json:"confirmStatus"` // 确认状态 1 通过 2 驳回 3 失败 + CostType uint32 `protobuf:"varint,7,opt,name=costType,proto3" json:"costType"` // 计费类型 1 套餐 2 增值 + ConfirmType uint32 `protobuf:"varint,8,opt,name=confirmType,proto3" json:"confirmType"` // 确认类型 1 艺人确认 2 系统确认 } func (x *UpdateWorkAnalysisStatusReq) Reset() { *x = UpdateWorkAnalysisStatusReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[86] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[88] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkAnalysisStatusReq) String() string { @@ -6500,8 +7036,8 @@ func (x *UpdateWorkAnalysisStatusReq) String() string { func (*UpdateWorkAnalysisStatusReq) ProtoMessage() {} func (x *UpdateWorkAnalysisStatusReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[86] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[88] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6513,7 +7049,7 @@ func (x *UpdateWorkAnalysisStatusReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkAnalysisStatusReq.ProtoReflect.Descriptor instead. func (*UpdateWorkAnalysisStatusReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{86} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{88} } func (x *UpdateWorkAnalysisStatusReq) GetWorkAction() WorkActionENUM { @@ -6565,26 +7101,36 @@ func (x *UpdateWorkAnalysisStatusReq) GetCostType() uint32 { return 0 } +func (x *UpdateWorkAnalysisStatusReq) GetConfirmType() uint32 { + if x != nil { + return x.ConfirmType + } + return 0 +} + type WorkAnalysisLogInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 标题 - UpdateTime string `protobuf:"bytes,3,opt,name=updateTime,proto3" json:"updateTime"` // 更新时间 - WorkAnalysisStatus uint32 `protobuf:"varint,4,opt,name=workAnalysisStatus,proto3" json:"workAnalysisStatus"` // 状态 - ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 - ArtistUuid string `protobuf:"bytes,6,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - AnalysisExtraData string `protobuf:"bytes,7,opt,name=analysisExtraData,proto3" json:"analysisExtraData"` // 数据分析扩展数据 - OperatorName string `protobuf:"bytes,8,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 - OperatorID string `protobuf:"bytes,9,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 标题 + UpdateTime string `protobuf:"bytes,3,opt,name=updateTime,proto3" json:"updateTime"` // 更新时间 + WorkAnalysisStatus uint32 `protobuf:"varint,4,opt,name=workAnalysisStatus,proto3" json:"workAnalysisStatus"` // 状态 + ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 + ArtistUuid string `protobuf:"bytes,6,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + AnalysisExtraData string `protobuf:"bytes,7,opt,name=analysisExtraData,proto3" json:"analysisExtraData"` // 数据分析扩展数据 + OperatorName string `protobuf:"bytes,8,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 + OperatorID string `protobuf:"bytes,9,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID } func (x *WorkAnalysisLogInfo) Reset() { *x = WorkAnalysisLogInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[87] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[89] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisLogInfo) String() string { @@ -6594,8 +7140,8 @@ func (x *WorkAnalysisLogInfo) String() string { func (*WorkAnalysisLogInfo) ProtoMessage() {} func (x *WorkAnalysisLogInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[87] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[89] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6607,7 +7153,7 @@ func (x *WorkAnalysisLogInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisLogInfo.ProtoReflect.Descriptor instead. func (*WorkAnalysisLogInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{87} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{89} } func (x *WorkAnalysisLogInfo) GetWorkUuid() string { @@ -6675,24 +7221,27 @@ func (x *WorkAnalysisLogInfo) GetOperatorID() string { // 粉丝数系列 type WorkAnalysisFansSeries struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - FansCount int64 `protobuf:"varint,2,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数总数 - PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 - StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD - EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD - DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] - CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + FansCount int64 `protobuf:"varint,2,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数总数 + PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 + StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD + EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD + DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] + CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisFansSeries) Reset() { *x = WorkAnalysisFansSeries{} - mi := &file_pb_fiee_cast_proto_msgTypes[88] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[90] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisFansSeries) String() string { @@ -6702,8 +7251,8 @@ func (x *WorkAnalysisFansSeries) String() string { func (*WorkAnalysisFansSeries) ProtoMessage() {} func (x *WorkAnalysisFansSeries) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[88] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[90] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6715,7 +7264,7 @@ func (x *WorkAnalysisFansSeries) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisFansSeries.ProtoReflect.Descriptor instead. func (*WorkAnalysisFansSeries) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{88} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{90} } func (x *WorkAnalysisFansSeries) GetUuid() string { @@ -6776,24 +7325,27 @@ func (x *WorkAnalysisFansSeries) GetUpdatedAt() int32 { // 访问量系列 type WorkAnalysisViewsSeries struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - ViewsCount int64 `protobuf:"varint,2,opt,name=viewsCount,proto3" json:"viewsCount"` // 访问数总数 - PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 - StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD - EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD - DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] - CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + ViewsCount int64 `protobuf:"varint,2,opt,name=viewsCount,proto3" json:"viewsCount"` // 访问数总数 + PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 + StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD + EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD + DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] + CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisViewsSeries) Reset() { *x = WorkAnalysisViewsSeries{} - mi := &file_pb_fiee_cast_proto_msgTypes[89] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[91] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisViewsSeries) String() string { @@ -6803,8 +7355,8 @@ func (x *WorkAnalysisViewsSeries) String() string { func (*WorkAnalysisViewsSeries) ProtoMessage() {} func (x *WorkAnalysisViewsSeries) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[89] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[91] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6816,7 +7368,7 @@ func (x *WorkAnalysisViewsSeries) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisViewsSeries.ProtoReflect.Descriptor instead. func (*WorkAnalysisViewsSeries) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{89} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{91} } func (x *WorkAnalysisViewsSeries) GetUuid() string { @@ -6877,24 +7429,27 @@ func (x *WorkAnalysisViewsSeries) GetUpdatedAt() int32 { // 点赞数系列 type WorkAnalysisLikesSeries struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - LikesCount int64 `protobuf:"varint,2,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数总数 - PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 - StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD - EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD - DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] - CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + LikesCount int64 `protobuf:"varint,2,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数总数 + PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 + StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD + EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD + DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] + CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisLikesSeries) Reset() { *x = WorkAnalysisLikesSeries{} - mi := &file_pb_fiee_cast_proto_msgTypes[90] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[92] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisLikesSeries) String() string { @@ -6904,8 +7459,8 @@ func (x *WorkAnalysisLikesSeries) String() string { func (*WorkAnalysisLikesSeries) ProtoMessage() {} func (x *WorkAnalysisLikesSeries) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[90] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[92] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6917,7 +7472,7 @@ func (x *WorkAnalysisLikesSeries) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisLikesSeries.ProtoReflect.Descriptor instead. func (*WorkAnalysisLikesSeries) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{90} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{92} } func (x *WorkAnalysisLikesSeries) GetUuid() string { @@ -6978,24 +7533,27 @@ func (x *WorkAnalysisLikesSeries) GetUpdatedAt() int32 { // 评论数系列 type WorkAnalysisCommentsSeries struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - CommentsCount int64 `protobuf:"varint,2,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数总数 - PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 - StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD - EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD - DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] - CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + CommentsCount int64 `protobuf:"varint,2,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数总数 + PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 + StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD + EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD + DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] + CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisCommentsSeries) Reset() { *x = WorkAnalysisCommentsSeries{} - mi := &file_pb_fiee_cast_proto_msgTypes[91] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[93] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisCommentsSeries) String() string { @@ -7005,8 +7563,8 @@ func (x *WorkAnalysisCommentsSeries) String() string { func (*WorkAnalysisCommentsSeries) ProtoMessage() {} func (x *WorkAnalysisCommentsSeries) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[91] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[93] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7018,7 +7576,7 @@ func (x *WorkAnalysisCommentsSeries) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisCommentsSeries.ProtoReflect.Descriptor instead. func (*WorkAnalysisCommentsSeries) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{91} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{93} } func (x *WorkAnalysisCommentsSeries) GetUuid() string { @@ -7079,24 +7637,27 @@ func (x *WorkAnalysisCommentsSeries) GetUpdatedAt() int32 { // 分享数系列 type WorkAnalysisSharesSeries struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - SharesCount int64 `protobuf:"varint,2,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数总数 - PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 - StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD - EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD - DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] - CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + SharesCount int64 `protobuf:"varint,2,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数总数 + PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 + StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD + EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD + DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] + CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisSharesSeries) Reset() { *x = WorkAnalysisSharesSeries{} - mi := &file_pb_fiee_cast_proto_msgTypes[92] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[94] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisSharesSeries) String() string { @@ -7106,8 +7667,8 @@ func (x *WorkAnalysisSharesSeries) String() string { func (*WorkAnalysisSharesSeries) ProtoMessage() {} func (x *WorkAnalysisSharesSeries) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[92] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[94] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7119,7 +7680,7 @@ func (x *WorkAnalysisSharesSeries) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisSharesSeries.ProtoReflect.Descriptor instead. func (*WorkAnalysisSharesSeries) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{92} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{94} } func (x *WorkAnalysisSharesSeries) GetUuid() string { @@ -7180,20 +7741,23 @@ func (x *WorkAnalysisSharesSeries) GetUpdatedAt() int32 { // Top城市 type WorkAnalysisTopCities struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - CitiesJSON string `protobuf:"bytes,2,opt,name=citiesJSON,proto3" json:"citiesJSON"` // [{cityName:string,count:int,rank:int}] - CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + CitiesJSON string `protobuf:"bytes,2,opt,name=citiesJSON,proto3" json:"citiesJSON"` // [{cityName:string,count:int,rank:int}] + CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisTopCities) Reset() { *x = WorkAnalysisTopCities{} - mi := &file_pb_fiee_cast_proto_msgTypes[93] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[95] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisTopCities) String() string { @@ -7203,8 +7767,8 @@ func (x *WorkAnalysisTopCities) String() string { func (*WorkAnalysisTopCities) ProtoMessage() {} func (x *WorkAnalysisTopCities) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[93] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[95] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7216,7 +7780,7 @@ func (x *WorkAnalysisTopCities) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisTopCities.ProtoReflect.Descriptor instead. func (*WorkAnalysisTopCities) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{93} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{95} } func (x *WorkAnalysisTopCities) GetUuid() string { @@ -7249,20 +7813,23 @@ func (x *WorkAnalysisTopCities) GetUpdatedAt() int32 { // 最活跃日 type WorkAnalysisMostActiveDay struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - DetailJSON string `protobuf:"bytes,2,opt,name=detailJSON,proto3" json:"detailJSON"` // 细节(如当日各项值) - CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + DetailJSON string `protobuf:"bytes,2,opt,name=detailJSON,proto3" json:"detailJSON"` // 细节(如当日各项值) + CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisMostActiveDay) Reset() { *x = WorkAnalysisMostActiveDay{} - mi := &file_pb_fiee_cast_proto_msgTypes[94] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[96] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisMostActiveDay) String() string { @@ -7272,8 +7839,8 @@ func (x *WorkAnalysisMostActiveDay) String() string { func (*WorkAnalysisMostActiveDay) ProtoMessage() {} func (x *WorkAnalysisMostActiveDay) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[94] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[96] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7285,7 +7852,7 @@ func (x *WorkAnalysisMostActiveDay) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisMostActiveDay.ProtoReflect.Descriptor instead. func (*WorkAnalysisMostActiveDay) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{94} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{96} } func (x *WorkAnalysisMostActiveDay) GetUuid() string { @@ -7318,20 +7885,23 @@ func (x *WorkAnalysisMostActiveDay) GetUpdatedAt() int32 { // 最佳发布时间 type WorkAnalysisBestPostTime struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - DetailJSON string `protobuf:"bytes,2,opt,name=detailJSON,proto3" json:"detailJSON"` // 细节(如最佳发布时间) - CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + DetailJSON string `protobuf:"bytes,2,opt,name=detailJSON,proto3" json:"detailJSON"` // 细节(如最佳发布时间) + CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisBestPostTime) Reset() { *x = WorkAnalysisBestPostTime{} - mi := &file_pb_fiee_cast_proto_msgTypes[95] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[97] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisBestPostTime) String() string { @@ -7341,8 +7911,8 @@ func (x *WorkAnalysisBestPostTime) String() string { func (*WorkAnalysisBestPostTime) ProtoMessage() {} func (x *WorkAnalysisBestPostTime) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[95] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[97] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7354,7 +7924,7 @@ func (x *WorkAnalysisBestPostTime) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisBestPostTime.ProtoReflect.Descriptor instead. func (*WorkAnalysisBestPostTime) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{95} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{97} } func (x *WorkAnalysisBestPostTime) GetUuid() string { @@ -7387,21 +7957,24 @@ func (x *WorkAnalysisBestPostTime) GetUpdatedAt() int32 { // 扩展信息 type WorkAnalysisExtra struct { - state protoimpl.MessageState `protogen:"open.v1"` - AnalysisUuid string `protobuf:"bytes,1,opt,name=analysisUuid,proto3" json:"analysisUuid"` // 数据分析uuid - ArtistConfirmedTime int64 `protobuf:"varint,2,opt,name=artistConfirmedTime,proto3" json:"artistConfirmedTime"` // 艺人确认时间 - CostType uint32 `protobuf:"varint,3,opt,name=costType,proto3" json:"costType"` // 计费类型 1 套餐 2 增值 - CreatedAt int32 `protobuf:"varint,4,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,5,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AnalysisUuid string `protobuf:"bytes,1,opt,name=analysisUuid,proto3" json:"analysisUuid"` // 数据分析uuid + ArtistConfirmedTime int64 `protobuf:"varint,2,opt,name=artistConfirmedTime,proto3" json:"artistConfirmedTime"` // 艺人确认时间 + CostType uint32 `protobuf:"varint,3,opt,name=costType,proto3" json:"costType"` // 计费类型 1 套餐 2 增值 + CreatedAt int32 `protobuf:"varint,4,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,5,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisExtra) Reset() { *x = WorkAnalysisExtra{} - mi := &file_pb_fiee_cast_proto_msgTypes[96] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[98] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisExtra) String() string { @@ -7411,8 +7984,8 @@ func (x *WorkAnalysisExtra) String() string { func (*WorkAnalysisExtra) ProtoMessage() {} func (x *WorkAnalysisExtra) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[96] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[98] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7424,7 +7997,7 @@ func (x *WorkAnalysisExtra) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisExtra.ProtoReflect.Descriptor instead. func (*WorkAnalysisExtra) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{96} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{98} } func (x *WorkAnalysisExtra) GetAnalysisUuid() string { @@ -7463,17 +8036,20 @@ func (x *WorkAnalysisExtra) GetUpdatedAt() int32 { } type GetWorkAnalysisDetailReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID } func (x *GetWorkAnalysisDetailReq) Reset() { *x = GetWorkAnalysisDetailReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[97] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[99] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetWorkAnalysisDetailReq) String() string { @@ -7483,8 +8059,8 @@ func (x *GetWorkAnalysisDetailReq) String() string { func (*GetWorkAnalysisDetailReq) ProtoMessage() {} func (x *GetWorkAnalysisDetailReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[97] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[99] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7496,7 +8072,7 @@ func (x *GetWorkAnalysisDetailReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetWorkAnalysisDetailReq.ProtoReflect.Descriptor instead. func (*GetWorkAnalysisDetailReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{97} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{99} } func (x *GetWorkAnalysisDetailReq) GetUuid() string { @@ -7507,17 +8083,20 @@ func (x *GetWorkAnalysisDetailReq) GetUuid() string { } type GetLatestWorkAnalysisReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - SubNum string `protobuf:"bytes,1,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SubNum string `protobuf:"bytes,1,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 } func (x *GetLatestWorkAnalysisReq) Reset() { *x = GetLatestWorkAnalysisReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[98] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[100] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetLatestWorkAnalysisReq) String() string { @@ -7527,8 +8106,8 @@ func (x *GetLatestWorkAnalysisReq) String() string { func (*GetLatestWorkAnalysisReq) ProtoMessage() {} func (x *GetLatestWorkAnalysisReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[98] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[100] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7540,7 +8119,7 @@ func (x *GetLatestWorkAnalysisReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetLatestWorkAnalysisReq.ProtoReflect.Descriptor instead. func (*GetLatestWorkAnalysisReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{98} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{100} } func (x *GetLatestWorkAnalysisReq) GetSubNum() string { @@ -7551,7 +8130,10 @@ func (x *GetLatestWorkAnalysisReq) GetSubNum() string { } type GetWorkAnalysisResp struct { - state protoimpl.MessageState `protogen:"open.v1"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 @@ -7590,15 +8172,15 @@ type GetWorkAnalysisResp struct { MostActiveDaySeries *WorkAnalysisMostActiveDay `protobuf:"bytes,36,opt,name=mostActiveDaySeries,proto3" json:"mostActiveDaySeries"` // 最活跃日 BestPostTimeSeries *WorkAnalysisBestPostTime `protobuf:"bytes,37,opt,name=bestPostTimeSeries,proto3" json:"bestPostTimeSeries"` // 最佳发布时间 UpdatedAt string `protobuf:"bytes,38,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache } func (x *GetWorkAnalysisResp) Reset() { *x = GetWorkAnalysisResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[99] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[101] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetWorkAnalysisResp) String() string { @@ -7608,8 +8190,8 @@ func (x *GetWorkAnalysisResp) String() string { func (*GetWorkAnalysisResp) ProtoMessage() {} func (x *GetWorkAnalysisResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[99] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[101] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7621,7 +8203,7 @@ func (x *GetWorkAnalysisResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetWorkAnalysisResp.ProtoReflect.Descriptor instead. func (*GetWorkAnalysisResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{99} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{101} } func (x *GetWorkAnalysisResp) GetUuid() string { @@ -7891,7 +8473,10 @@ func (x *GetWorkAnalysisResp) GetUpdatedAt() string { } type GetWorkAnalysisDetailResp struct { - state protoimpl.MessageState `protogen:"open.v1"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 @@ -7932,15 +8517,15 @@ type GetWorkAnalysisDetailResp struct { Extra *WorkAnalysisExtra `protobuf:"bytes,38,opt,name=extra,proto3" json:"extra"` // 扩展信息 CreatedAt string `protobuf:"bytes,39,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 UpdatedAt string `protobuf:"bytes,40,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache } func (x *GetWorkAnalysisDetailResp) Reset() { *x = GetWorkAnalysisDetailResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[100] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[102] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetWorkAnalysisDetailResp) String() string { @@ -7950,8 +8535,8 @@ func (x *GetWorkAnalysisDetailResp) String() string { func (*GetWorkAnalysisDetailResp) ProtoMessage() {} func (x *GetWorkAnalysisDetailResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[100] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[102] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7963,7 +8548,7 @@ func (x *GetWorkAnalysisDetailResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetWorkAnalysisDetailResp.ProtoReflect.Descriptor instead. func (*GetWorkAnalysisDetailResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{100} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{102} } func (x *GetWorkAnalysisDetailResp) GetUuid() string { @@ -8247,29 +8832,32 @@ func (x *GetWorkAnalysisDetailResp) GetUpdatedAt() string { } type ListWorkAnalysisReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - UuidList []string `protobuf:"bytes,1,rep,name=uuidList,proto3" json:"uuidList"` // UUID列表 - SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - ArtistVal string `protobuf:"bytes,3,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 - Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态 - ComfirmType int32 `protobuf:"varint,5,opt,name=comfirmType,proto3" json:"comfirmType"` // 确认类型 - StatusUpdateTimeStart string `protobuf:"bytes,6,opt,name=statusUpdateTimeStart,proto3" json:"statusUpdateTimeStart"` // 状态更新时间开始 - StatusUpdateTimeEnd string `protobuf:"bytes,7,opt,name=statusUpdateTimeEnd,proto3" json:"statusUpdateTimeEnd"` // 状态更新时间结束 - SubmitStartTime string `protobuf:"bytes,8,opt,name=submitStartTime,proto3" json:"submitStartTime"` // 提交时间开始 - SubmitEndTime string `protobuf:"bytes,9,opt,name=submitEndTime,proto3" json:"submitEndTime"` // 提交时间结束 - Page int32 `protobuf:"varint,10,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,11,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - StatusList []uint32 `protobuf:"varint,12,rep,packed,name=statusList,proto3" json:"statusList"` // 状态列表 - ArtistUuid string `protobuf:"bytes,13,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + UuidList []string `protobuf:"bytes,1,rep,name=uuidList,proto3" json:"uuidList"` // UUID列表 + SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + ArtistVal string `protobuf:"bytes,3,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 + Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态 + ComfirmType int32 `protobuf:"varint,5,opt,name=comfirmType,proto3" json:"comfirmType"` // 确认类型 + StatusUpdateTimeStart string `protobuf:"bytes,6,opt,name=statusUpdateTimeStart,proto3" json:"statusUpdateTimeStart"` // 状态更新时间开始 + StatusUpdateTimeEnd string `protobuf:"bytes,7,opt,name=statusUpdateTimeEnd,proto3" json:"statusUpdateTimeEnd"` // 状态更新时间结束 + SubmitStartTime string `protobuf:"bytes,8,opt,name=submitStartTime,proto3" json:"submitStartTime"` // 提交时间开始 + SubmitEndTime string `protobuf:"bytes,9,opt,name=submitEndTime,proto3" json:"submitEndTime"` // 提交时间结束 + Page int32 `protobuf:"varint,10,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,11,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 + StatusList []uint32 `protobuf:"varint,12,rep,packed,name=statusList,proto3" json:"statusList"` // 状态列表 + ArtistUuid string `protobuf:"bytes,13,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID } func (x *ListWorkAnalysisReq) Reset() { *x = ListWorkAnalysisReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[101] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[103] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListWorkAnalysisReq) String() string { @@ -8279,8 +8867,8 @@ func (x *ListWorkAnalysisReq) String() string { func (*ListWorkAnalysisReq) ProtoMessage() {} func (x *ListWorkAnalysisReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[101] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[103] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8292,7 +8880,7 @@ func (x *ListWorkAnalysisReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ListWorkAnalysisReq.ProtoReflect.Descriptor instead. func (*ListWorkAnalysisReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{101} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{103} } func (x *ListWorkAnalysisReq) GetUuidList() []string { @@ -8387,31 +8975,34 @@ func (x *ListWorkAnalysisReq) GetArtistUuid() string { } type WorkAnalysisInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistID string `protobuf:"bytes,4,opt,name=artistID,proto3" json:"artistID"` // 艺人ID - ArtistPhone string `protobuf:"bytes,5,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - OperatorID string `protobuf:"bytes,6,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID - OperatorName string `protobuf:"bytes,7,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 - WorkAnalysisStatus uint32 `protobuf:"varint,8,opt,name=workAnalysisStatus,proto3" json:"workAnalysisStatus"` // 状态 - Reason string `protobuf:"bytes,9,opt,name=reason,proto3" json:"reason"` // 原因 - ComfirmType int32 `protobuf:"varint,10,opt,name=comfirmType,proto3" json:"comfirmType"` // 确认类型 - SubmitTime string `protobuf:"bytes,11,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 - StatusUpdateTime string `protobuf:"bytes,12,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` // 状态更新时间 - PdfUrl string `protobuf:"bytes,13,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 - ApprovalID string `protobuf:"bytes,14,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID - Title string `protobuf:"bytes,15,opt,name=title,proto3" json:"title"` // 标题 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID + SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistID string `protobuf:"bytes,4,opt,name=artistID,proto3" json:"artistID"` // 艺人ID + ArtistPhone string `protobuf:"bytes,5,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + OperatorID string `protobuf:"bytes,6,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID + OperatorName string `protobuf:"bytes,7,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 + WorkAnalysisStatus uint32 `protobuf:"varint,8,opt,name=workAnalysisStatus,proto3" json:"workAnalysisStatus"` // 状态 + Reason string `protobuf:"bytes,9,opt,name=reason,proto3" json:"reason"` // 原因 + ComfirmType int32 `protobuf:"varint,10,opt,name=comfirmType,proto3" json:"comfirmType"` // 确认类型 + SubmitTime string `protobuf:"bytes,11,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 + StatusUpdateTime string `protobuf:"bytes,12,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` // 状态更新时间 + PdfUrl string `protobuf:"bytes,13,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 + ApprovalID string `protobuf:"bytes,14,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID + Title string `protobuf:"bytes,15,opt,name=title,proto3" json:"title"` // 标题 } func (x *WorkAnalysisInfo) Reset() { *x = WorkAnalysisInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[102] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[104] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisInfo) String() string { @@ -8421,8 +9012,8 @@ func (x *WorkAnalysisInfo) String() string { func (*WorkAnalysisInfo) ProtoMessage() {} func (x *WorkAnalysisInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[102] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[104] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8434,7 +9025,7 @@ func (x *WorkAnalysisInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisInfo.ProtoReflect.Descriptor instead. func (*WorkAnalysisInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{102} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{104} } func (x *WorkAnalysisInfo) GetUuid() string { @@ -8543,18 +9134,21 @@ func (x *WorkAnalysisInfo) GetTitle() string { } type ListWorkAnalysisResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*WorkAnalysisInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 作品分析列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*WorkAnalysisInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 作品分析列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *ListWorkAnalysisResp) Reset() { *x = ListWorkAnalysisResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[103] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[105] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListWorkAnalysisResp) String() string { @@ -8564,8 +9158,8 @@ func (x *ListWorkAnalysisResp) String() string { func (*ListWorkAnalysisResp) ProtoMessage() {} func (x *ListWorkAnalysisResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[103] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[105] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8577,7 +9171,7 @@ func (x *ListWorkAnalysisResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ListWorkAnalysisResp.ProtoReflect.Descriptor instead. func (*ListWorkAnalysisResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{103} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{105} } func (x *ListWorkAnalysisResp) GetData() []*WorkAnalysisInfo { @@ -8595,17 +9189,20 @@ func (x *ListWorkAnalysisResp) GetCount() int64 { } type DeleteWorkAnalysisReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID } func (x *DeleteWorkAnalysisReq) Reset() { *x = DeleteWorkAnalysisReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[104] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[106] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DeleteWorkAnalysisReq) String() string { @@ -8615,8 +9212,8 @@ func (x *DeleteWorkAnalysisReq) String() string { func (*DeleteWorkAnalysisReq) ProtoMessage() {} func (x *DeleteWorkAnalysisReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[104] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[106] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8628,7 +9225,7 @@ func (x *DeleteWorkAnalysisReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteWorkAnalysisReq.ProtoReflect.Descriptor instead. func (*DeleteWorkAnalysisReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{104} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{106} } func (x *DeleteWorkAnalysisReq) GetUuid() string { @@ -8640,24 +9237,27 @@ func (x *DeleteWorkAnalysisReq) GetUuid() string { // 艺人数据列表请求 type ArtistDataListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 - BundleName string `protobuf:"bytes,2,opt,name=bundleName,proto3" json:"bundleName"` // 套餐名称 - ExpiredTimeStart string `protobuf:"bytes,3,opt,name=expiredTimeStart,proto3" json:"expiredTimeStart"` // 过期时间开始 - ExpiredTimeEnd string `protobuf:"bytes,4,opt,name=expiredTimeEnd,proto3" json:"expiredTimeEnd"` // 过期时间结束 - SubmitTimeStart string `protobuf:"bytes,5,opt,name=submitTimeStart,proto3" json:"submitTimeStart"` // 提交时间开始 - SubmitTimeEnd string `protobuf:"bytes,6,opt,name=submitTimeEnd,proto3" json:"submitTimeEnd"` // 提交时间结束 - Page int32 `protobuf:"varint,7,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,8,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 + BundleName string `protobuf:"bytes,2,opt,name=bundleName,proto3" json:"bundleName"` // 套餐名称 + ExpiredTimeStart string `protobuf:"bytes,3,opt,name=expiredTimeStart,proto3" json:"expiredTimeStart"` // 过期时间开始 + ExpiredTimeEnd string `protobuf:"bytes,4,opt,name=expiredTimeEnd,proto3" json:"expiredTimeEnd"` // 过期时间结束 + SubmitTimeStart string `protobuf:"bytes,5,opt,name=submitTimeStart,proto3" json:"submitTimeStart"` // 提交时间开始 + SubmitTimeEnd string `protobuf:"bytes,6,opt,name=submitTimeEnd,proto3" json:"submitTimeEnd"` // 提交时间结束 + Page int32 `protobuf:"varint,7,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,8,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 } func (x *ArtistDataListReq) Reset() { *x = ArtistDataListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[105] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[107] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistDataListReq) String() string { @@ -8667,8 +9267,8 @@ func (x *ArtistDataListReq) String() string { func (*ArtistDataListReq) ProtoMessage() {} func (x *ArtistDataListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[105] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[107] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8680,7 +9280,7 @@ func (x *ArtistDataListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistDataListReq.ProtoReflect.Descriptor instead. func (*ArtistDataListReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{105} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{107} } func (x *ArtistDataListReq) GetArtistVal() string { @@ -8741,35 +9341,38 @@ func (x *ArtistDataListReq) GetPageSize() int32 { // 艺人数据列表响应项 type ArtistDataRespItem struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistName string `protobuf:"bytes,1,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - BundleName string `protobuf:"bytes,5,opt,name=bundleName,proto3" json:"bundleName"` // 套餐名称 - AccountNumber int32 `protobuf:"varint,6,opt,name=accountNumber,proto3" json:"accountNumber"` // 账号总数 - AccountConsumptionNumber int32 `protobuf:"varint,7,opt,name=accountConsumptionNumber,proto3" json:"accountConsumptionNumber"` // 账号使用数 - DataAnalysisNumber int32 `protobuf:"varint,8,opt,name=dataAnalysisNumber,proto3" json:"dataAnalysisNumber"` // 数据分析总数 - DataAnalysisConsumptionNumber int32 `protobuf:"varint,9,opt,name=dataAnalysisConsumptionNumber,proto3" json:"dataAnalysisConsumptionNumber"` // 数据分析使用数 - SubmitTime string `protobuf:"bytes,10,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 - FansCount int64 `protobuf:"varint,11,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 - ViewsCount int64 `protobuf:"varint,12,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 - LikesCount int64 `protobuf:"varint,13,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,14,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,15,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - CastWorkCount int64 `protobuf:"varint,16,opt,name=castWorkCount,proto3" json:"castWorkCount"` // 作品数(视频+图片) - ExpiredTime string `protobuf:"bytes,17,opt,name=expiredTime,proto3" json:"expiredTime"` // 过期时间 - VideoCount int64 `protobuf:"varint,18,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 - ImageCount int64 `protobuf:"varint,19,opt,name=imageCount,proto3" json:"imageCount"` // 图文数 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistName string `protobuf:"bytes,1,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + BundleName string `protobuf:"bytes,5,opt,name=bundleName,proto3" json:"bundleName"` // 套餐名称 + AccountNumber int32 `protobuf:"varint,6,opt,name=accountNumber,proto3" json:"accountNumber"` // 账号总数 + AccountConsumptionNumber int32 `protobuf:"varint,7,opt,name=accountConsumptionNumber,proto3" json:"accountConsumptionNumber"` // 账号使用数 + DataAnalysisNumber int32 `protobuf:"varint,8,opt,name=dataAnalysisNumber,proto3" json:"dataAnalysisNumber"` // 数据分析总数 + DataAnalysisConsumptionNumber int32 `protobuf:"varint,9,opt,name=dataAnalysisConsumptionNumber,proto3" json:"dataAnalysisConsumptionNumber"` // 数据分析使用数 + SubmitTime string `protobuf:"bytes,10,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 + FansCount int64 `protobuf:"varint,11,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 + ViewsCount int64 `protobuf:"varint,12,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,13,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,14,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,15,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + CastWorkCount int64 `protobuf:"varint,16,opt,name=castWorkCount,proto3" json:"castWorkCount"` // 作品数(视频+图片) + ExpiredTime string `protobuf:"bytes,17,opt,name=expiredTime,proto3" json:"expiredTime"` // 过期时间 + VideoCount int64 `protobuf:"varint,18,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 + ImageCount int64 `protobuf:"varint,19,opt,name=imageCount,proto3" json:"imageCount"` // 图文数 } func (x *ArtistDataRespItem) Reset() { *x = ArtistDataRespItem{} - mi := &file_pb_fiee_cast_proto_msgTypes[106] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[108] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistDataRespItem) String() string { @@ -8779,8 +9382,8 @@ func (x *ArtistDataRespItem) String() string { func (*ArtistDataRespItem) ProtoMessage() {} func (x *ArtistDataRespItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[106] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[108] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8792,7 +9395,7 @@ func (x *ArtistDataRespItem) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistDataRespItem.ProtoReflect.Descriptor instead. func (*ArtistDataRespItem) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{106} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{108} } func (x *ArtistDataRespItem) GetArtistName() string { @@ -8930,18 +9533,21 @@ func (x *ArtistDataRespItem) GetImageCount() int64 { // 艺人数据列表响应 type ArtistDataListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*ArtistDataRespItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 艺人数据列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*ArtistDataRespItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 艺人数据列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *ArtistDataListResp) Reset() { *x = ArtistDataListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[107] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[109] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistDataListResp) String() string { @@ -8951,8 +9557,8 @@ func (x *ArtistDataListResp) String() string { func (*ArtistDataListResp) ProtoMessage() {} func (x *ArtistDataListResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[107] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[109] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8964,7 +9570,7 @@ func (x *ArtistDataListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistDataListResp.ProtoReflect.Descriptor instead. func (*ArtistDataListResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{107} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{109} } func (x *ArtistDataListResp) GetData() []*ArtistDataRespItem { @@ -8983,21 +9589,24 @@ func (x *ArtistDataListResp) GetCount() int64 { // 自媒体数据列表请求 type MediaDataListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 - PlatformUserName string `protobuf:"bytes,2,opt,name=platformUserName,proto3" json:"platformUserName"` // 平台用户名 - PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` // 平台ID - Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 + PlatformUserName string `protobuf:"bytes,2,opt,name=platformUserName,proto3" json:"platformUserName"` // 平台用户名 + PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` // 平台ID + Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 } func (x *MediaDataListReq) Reset() { *x = MediaDataListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[108] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[110] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaDataListReq) String() string { @@ -9007,8 +9616,8 @@ func (x *MediaDataListReq) String() string { func (*MediaDataListReq) ProtoMessage() {} func (x *MediaDataListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[108] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[110] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9020,7 +9629,7 @@ func (x *MediaDataListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaDataListReq.ProtoReflect.Descriptor instead. func (*MediaDataListReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{108} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{110} } func (x *MediaDataListReq) GetArtistVal() string { @@ -9060,31 +9669,34 @@ func (x *MediaDataListReq) GetPageSize() int32 { // 自媒体数据列表响应项 type MediaDataListItem struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistName string `protobuf:"bytes,1,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - PlatformUserName string `protobuf:"bytes,5,opt,name=platformUserName,proto3" json:"platformUserName"` // 平台用户名 - PlatformID uint32 `protobuf:"varint,6,opt,name=platformID,proto3" json:"platformID"` // 平台ID - SubmitTime string `protobuf:"bytes,7,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 - FansCount int64 `protobuf:"varint,8,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 - ViewsCount int64 `protobuf:"varint,9,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 - LikesCount int64 `protobuf:"varint,10,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,11,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,12,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - CastWorkCount int64 `protobuf:"varint,13,opt,name=castWorkCount,proto3" json:"castWorkCount"` // 作品数(视频+图片) - VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 - ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图文数 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistName string `protobuf:"bytes,1,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + PlatformUserName string `protobuf:"bytes,5,opt,name=platformUserName,proto3" json:"platformUserName"` // 平台用户名 + PlatformID uint32 `protobuf:"varint,6,opt,name=platformID,proto3" json:"platformID"` // 平台ID + SubmitTime string `protobuf:"bytes,7,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 + FansCount int64 `protobuf:"varint,8,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 + ViewsCount int64 `protobuf:"varint,9,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,10,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,11,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,12,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + CastWorkCount int64 `protobuf:"varint,13,opt,name=castWorkCount,proto3" json:"castWorkCount"` // 作品数(视频+图片) + VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 + ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图文数 } func (x *MediaDataListItem) Reset() { *x = MediaDataListItem{} - mi := &file_pb_fiee_cast_proto_msgTypes[109] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[111] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaDataListItem) String() string { @@ -9094,8 +9706,8 @@ func (x *MediaDataListItem) String() string { func (*MediaDataListItem) ProtoMessage() {} func (x *MediaDataListItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[109] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[111] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9107,7 +9719,7 @@ func (x *MediaDataListItem) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaDataListItem.ProtoReflect.Descriptor instead. func (*MediaDataListItem) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{109} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{111} } func (x *MediaDataListItem) GetArtistName() string { @@ -9217,18 +9829,21 @@ func (x *MediaDataListItem) GetImageCount() int64 { // 自媒体数据列表响应 type MediaDataListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*MediaDataListItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 自媒体数据列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*MediaDataListItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 自媒体数据列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *MediaDataListResp) Reset() { *x = MediaDataListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[110] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[112] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaDataListResp) String() string { @@ -9238,8 +9853,8 @@ func (x *MediaDataListResp) String() string { func (*MediaDataListResp) ProtoMessage() {} func (x *MediaDataListResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[110] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[112] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9251,7 +9866,7 @@ func (x *MediaDataListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaDataListResp.ProtoReflect.Descriptor instead. func (*MediaDataListResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{110} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{112} } func (x *MediaDataListResp) GetData() []*MediaDataListItem { @@ -9270,17 +9885,20 @@ func (x *MediaDataListResp) GetCount() int64 { // 数据概览请求 type DataOverviewReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Date string `protobuf:"bytes,1,opt,name=date,proto3" json:"date"` // 日期,格式:YYYY-MM-DD,如:2025-12-08 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Date string `protobuf:"bytes,1,opt,name=date,proto3" json:"date"` // 日期,格式:YYYY-MM-DD,如:2025-12-08 } func (x *DataOverviewReq) Reset() { *x = DataOverviewReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[111] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[113] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DataOverviewReq) String() string { @@ -9290,8 +9908,8 @@ func (x *DataOverviewReq) String() string { func (*DataOverviewReq) ProtoMessage() {} func (x *DataOverviewReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[111] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[113] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9303,7 +9921,7 @@ func (x *DataOverviewReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DataOverviewReq.ProtoReflect.Descriptor instead. func (*DataOverviewReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{111} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{113} } func (x *DataOverviewReq) GetDate() string { @@ -9315,36 +9933,39 @@ func (x *DataOverviewReq) GetDate() string { // 数据概览响应 type DataOverviewResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - AccountCount int64 `protobuf:"varint,1,opt,name=accountCount,proto3" json:"accountCount"` // 账号总数 - TodayAccountCount int64 `protobuf:"varint,2,opt,name=todayAccountCount,proto3" json:"todayAccountCount"` // 今日新增账号数 - FansCount int64 `protobuf:"varint,3,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝总数 - TodayFansCount int64 `protobuf:"varint,4,opt,name=todayFansCount,proto3" json:"todayFansCount"` // 今日新增粉丝数 - ViewsCount int64 `protobuf:"varint,5,opt,name=viewsCount,proto3" json:"viewsCount"` // 播放量总数 - TodayViewsCount int64 `protobuf:"varint,6,opt,name=todayViewsCount,proto3" json:"todayViewsCount"` // 今日新增播放量数 - LikesCount int64 `protobuf:"varint,7,opt,name=likesCount,proto3" json:"likesCount"` // 点赞总数 - TodayLikesCount int64 `protobuf:"varint,8,opt,name=todayLikesCount,proto3" json:"todayLikesCount"` // 今日新增点赞数 - CommentsCount int64 `protobuf:"varint,9,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论总数 - TodayCommentsCount int64 `protobuf:"varint,10,opt,name=todayCommentsCount,proto3" json:"todayCommentsCount"` // 今日新增评论数 - SharesCount int64 `protobuf:"varint,11,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享总数 - TodaySharesCount int64 `protobuf:"varint,12,opt,name=todaySharesCount,proto3" json:"todaySharesCount"` // 今日分享总数 - ImageCount int64 `protobuf:"varint,13,opt,name=imageCount,proto3" json:"imageCount"` // 图文总数 - TodayImageCount int64 `protobuf:"varint,14,opt,name=todayImageCount,proto3" json:"todayImageCount"` // 今日新增图文数 - VideoCount int64 `protobuf:"varint,15,opt,name=videoCount,proto3" json:"videoCount"` // 视频总数 - TodayVideoCount int64 `protobuf:"varint,16,opt,name=todayVideoCount,proto3" json:"todayVideoCount"` // 今日新增视频数 - ConfirmDataCount int64 `protobuf:"varint,17,opt,name=confirmDataCount,proto3" json:"confirmDataCount"` // 已确认数据总数 - TodayConfirmDataCount int64 `protobuf:"varint,18,opt,name=todayConfirmDataCount,proto3" json:"todayConfirmDataCount"` // 今日新增确认数据总数 - ToBeConfirmedDataCount int64 `protobuf:"varint,19,opt,name=toBeConfirmedDataCount,proto3" json:"toBeConfirmedDataCount"` // 待确认数据总数 - ApprovingDataCount int64 `protobuf:"varint,20,opt,name=approvingDataCount,proto3" json:"approvingDataCount"` // 审批中数据总数 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccountCount int64 `protobuf:"varint,1,opt,name=accountCount,proto3" json:"accountCount"` // 账号总数 + TodayAccountCount int64 `protobuf:"varint,2,opt,name=todayAccountCount,proto3" json:"todayAccountCount"` // 今日新增账号数 + FansCount int64 `protobuf:"varint,3,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝总数 + TodayFansCount int64 `protobuf:"varint,4,opt,name=todayFansCount,proto3" json:"todayFansCount"` // 今日新增粉丝数 + ViewsCount int64 `protobuf:"varint,5,opt,name=viewsCount,proto3" json:"viewsCount"` // 播放量总数 + TodayViewsCount int64 `protobuf:"varint,6,opt,name=todayViewsCount,proto3" json:"todayViewsCount"` // 今日新增播放量数 + LikesCount int64 `protobuf:"varint,7,opt,name=likesCount,proto3" json:"likesCount"` // 点赞总数 + TodayLikesCount int64 `protobuf:"varint,8,opt,name=todayLikesCount,proto3" json:"todayLikesCount"` // 今日新增点赞数 + CommentsCount int64 `protobuf:"varint,9,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论总数 + TodayCommentsCount int64 `protobuf:"varint,10,opt,name=todayCommentsCount,proto3" json:"todayCommentsCount"` // 今日新增评论数 + SharesCount int64 `protobuf:"varint,11,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享总数 + TodaySharesCount int64 `protobuf:"varint,12,opt,name=todaySharesCount,proto3" json:"todaySharesCount"` // 今日分享总数 + ImageCount int64 `protobuf:"varint,13,opt,name=imageCount,proto3" json:"imageCount"` // 图文总数 + TodayImageCount int64 `protobuf:"varint,14,opt,name=todayImageCount,proto3" json:"todayImageCount"` // 今日新增图文数 + VideoCount int64 `protobuf:"varint,15,opt,name=videoCount,proto3" json:"videoCount"` // 视频总数 + TodayVideoCount int64 `protobuf:"varint,16,opt,name=todayVideoCount,proto3" json:"todayVideoCount"` // 今日新增视频数 + ConfirmDataCount int64 `protobuf:"varint,17,opt,name=confirmDataCount,proto3" json:"confirmDataCount"` // 已确认数据总数 + TodayConfirmDataCount int64 `protobuf:"varint,18,opt,name=todayConfirmDataCount,proto3" json:"todayConfirmDataCount"` // 今日新增确认数据总数 + ToBeConfirmedDataCount int64 `protobuf:"varint,19,opt,name=toBeConfirmedDataCount,proto3" json:"toBeConfirmedDataCount"` // 待确认数据总数 + ApprovingDataCount int64 `protobuf:"varint,20,opt,name=approvingDataCount,proto3" json:"approvingDataCount"` // 审批中数据总数 } func (x *DataOverviewResp) Reset() { *x = DataOverviewResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[112] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[114] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DataOverviewResp) String() string { @@ -9354,8 +9975,8 @@ func (x *DataOverviewResp) String() string { func (*DataOverviewResp) ProtoMessage() {} func (x *DataOverviewResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[112] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[114] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9367,7 +9988,7 @@ func (x *DataOverviewResp) ProtoReflect() protoreflect.Message { // Deprecated: Use DataOverviewResp.ProtoReflect.Descriptor instead. func (*DataOverviewResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{112} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{114} } func (x *DataOverviewResp) GetAccountCount() int64 { @@ -9512,22 +10133,25 @@ func (x *DataOverviewResp) GetApprovingDataCount() int64 { // 艺人指标系列请求 type ArtistMetricsSeriesReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUUID string `protobuf:"bytes,1,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID - PeriodTypeFans uint32 `protobuf:"varint,2,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 - PeriodTypeViews uint32 `protobuf:"varint,3,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 - PeriodTypeLikes uint32 `protobuf:"varint,4,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 - PeriodTypeComments uint32 `protobuf:"varint,5,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 - PeriodTypeShares uint32 `protobuf:"varint,6,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUUID string `protobuf:"bytes,1,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID + PeriodTypeFans uint32 `protobuf:"varint,2,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 + PeriodTypeViews uint32 `protobuf:"varint,3,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 + PeriodTypeLikes uint32 `protobuf:"varint,4,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 + PeriodTypeComments uint32 `protobuf:"varint,5,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 + PeriodTypeShares uint32 `protobuf:"varint,6,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 } func (x *ArtistMetricsSeriesReq) Reset() { *x = ArtistMetricsSeriesReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[113] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[115] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistMetricsSeriesReq) String() string { @@ -9537,8 +10161,8 @@ func (x *ArtistMetricsSeriesReq) String() string { func (*ArtistMetricsSeriesReq) ProtoMessage() {} func (x *ArtistMetricsSeriesReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[113] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[115] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9550,7 +10174,7 @@ func (x *ArtistMetricsSeriesReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistMetricsSeriesReq.ProtoReflect.Descriptor instead. func (*ArtistMetricsSeriesReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{113} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{115} } func (x *ArtistMetricsSeriesReq) GetArtistUUID() string { @@ -9597,7 +10221,10 @@ func (x *ArtistMetricsSeriesReq) GetPeriodTypeShares() uint32 { // 艺人指标系列响应 type ArtistMetricsSeriesResp struct { - state protoimpl.MessageState `protogen:"open.v1"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + FansSeries *WorkAnalysisFansSeries `protobuf:"bytes,1,opt,name=fansSeries,proto3" json:"fansSeries"` // 粉丝数系列 ViewsSeries *WorkAnalysisViewsSeries `protobuf:"bytes,2,opt,name=viewsSeries,proto3" json:"viewsSeries"` // 播放量系列 LikesSeries *WorkAnalysisLikesSeries `protobuf:"bytes,3,opt,name=likesSeries,proto3" json:"likesSeries"` // 点赞数系列 @@ -9605,15 +10232,15 @@ type ArtistMetricsSeriesResp struct { SharesSeries *WorkAnalysisSharesSeries `protobuf:"bytes,5,opt,name=sharesSeries,proto3" json:"sharesSeries"` // 分享数系列 BestPostTime *WorkAnalysisBestPostTime `protobuf:"bytes,6,opt,name=bestPostTime,proto3" json:"bestPostTime"` // 最佳发布时间 MostActiveDay *WorkAnalysisMostActiveDay `protobuf:"bytes,7,opt,name=mostActiveDay,proto3" json:"mostActiveDay"` // 最活跃日期 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache } func (x *ArtistMetricsSeriesResp) Reset() { *x = ArtistMetricsSeriesResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[114] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[116] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistMetricsSeriesResp) String() string { @@ -9623,8 +10250,8 @@ func (x *ArtistMetricsSeriesResp) String() string { func (*ArtistMetricsSeriesResp) ProtoMessage() {} func (x *ArtistMetricsSeriesResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[114] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[116] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9636,7 +10263,7 @@ func (x *ArtistMetricsSeriesResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistMetricsSeriesResp.ProtoReflect.Descriptor instead. func (*ArtistMetricsSeriesResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{114} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{116} } func (x *ArtistMetricsSeriesResp) GetFansSeries() *WorkAnalysisFansSeries { @@ -9690,19 +10317,22 @@ func (x *ArtistMetricsSeriesResp) GetMostActiveDay() *WorkAnalysisMostActiveDay // 艺人指标日期窗口请求 type ArtistMetricsDailyWindowReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUUID string `protobuf:"bytes,1,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID - PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` // 平台ID - Date int32 `protobuf:"varint,3,opt,name=date,proto3" json:"date"` // 日期 YYYYMMDD - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUUID string `protobuf:"bytes,1,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID + PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` // 平台ID + Date int32 `protobuf:"varint,3,opt,name=date,proto3" json:"date"` // 日期 YYYYMMDD } func (x *ArtistMetricsDailyWindowReq) Reset() { *x = ArtistMetricsDailyWindowReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[115] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[117] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistMetricsDailyWindowReq) String() string { @@ -9712,8 +10342,8 @@ func (x *ArtistMetricsDailyWindowReq) String() string { func (*ArtistMetricsDailyWindowReq) ProtoMessage() {} func (x *ArtistMetricsDailyWindowReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[115] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[117] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9725,7 +10355,7 @@ func (x *ArtistMetricsDailyWindowReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistMetricsDailyWindowReq.ProtoReflect.Descriptor instead. func (*ArtistMetricsDailyWindowReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{115} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{117} } func (x *ArtistMetricsDailyWindowReq) GetArtistUUID() string { @@ -9751,18 +10381,21 @@ func (x *ArtistMetricsDailyWindowReq) GetDate() int32 { // 简单数据点 type SimplePoint struct { - state protoimpl.MessageState `protogen:"open.v1"` - Date int32 `protobuf:"varint,1,opt,name=date,proto3" json:"date"` // 日期 YYYYMMDD - Value int64 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Date int32 `protobuf:"varint,1,opt,name=date,proto3" json:"date"` // 日期 YYYYMMDD + Value int64 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 } func (x *SimplePoint) Reset() { *x = SimplePoint{} - mi := &file_pb_fiee_cast_proto_msgTypes[116] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[118] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *SimplePoint) String() string { @@ -9772,8 +10405,8 @@ func (x *SimplePoint) String() string { func (*SimplePoint) ProtoMessage() {} func (x *SimplePoint) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[116] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[118] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9785,7 +10418,7 @@ func (x *SimplePoint) ProtoReflect() protoreflect.Message { // Deprecated: Use SimplePoint.ProtoReflect.Descriptor instead. func (*SimplePoint) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{116} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{118} } func (x *SimplePoint) GetDate() int32 { @@ -9804,18 +10437,21 @@ func (x *SimplePoint) GetValue() int64 { // 最佳发布时间点 type BestPostTimePoint struct { - state protoimpl.MessageState `protogen:"open.v1"` - TimePoint string `protobuf:"bytes,1,opt,name=timePoint,proto3" json:"timePoint"` // 时间段,如 "0-3", "3-6" 等 - Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TimePoint string `protobuf:"bytes,1,opt,name=timePoint,proto3" json:"timePoint"` // 时间段,如 "0-3", "3-6" 等 + Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 } func (x *BestPostTimePoint) Reset() { *x = BestPostTimePoint{} - mi := &file_pb_fiee_cast_proto_msgTypes[117] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[119] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *BestPostTimePoint) String() string { @@ -9825,8 +10461,8 @@ func (x *BestPostTimePoint) String() string { func (*BestPostTimePoint) ProtoMessage() {} func (x *BestPostTimePoint) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[117] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[119] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9838,7 +10474,7 @@ func (x *BestPostTimePoint) ProtoReflect() protoreflect.Message { // Deprecated: Use BestPostTimePoint.ProtoReflect.Descriptor instead. func (*BestPostTimePoint) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{117} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{119} } func (x *BestPostTimePoint) GetTimePoint() string { @@ -9857,18 +10493,21 @@ func (x *BestPostTimePoint) GetValue() int32 { // 最活跃日期点 type MostActiveDayPoint struct { - state protoimpl.MessageState `protogen:"open.v1"` - Day int32 `protobuf:"varint,1,opt,name=day,proto3" json:"day"` // 天数 1-7 - Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Day int32 `protobuf:"varint,1,opt,name=day,proto3" json:"day"` // 天数 1-7 + Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 } func (x *MostActiveDayPoint) Reset() { *x = MostActiveDayPoint{} - mi := &file_pb_fiee_cast_proto_msgTypes[118] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[120] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MostActiveDayPoint) String() string { @@ -9878,8 +10517,8 @@ func (x *MostActiveDayPoint) String() string { func (*MostActiveDayPoint) ProtoMessage() {} func (x *MostActiveDayPoint) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[118] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[120] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9891,7 +10530,7 @@ func (x *MostActiveDayPoint) ProtoReflect() protoreflect.Message { // Deprecated: Use MostActiveDayPoint.ProtoReflect.Descriptor instead. func (*MostActiveDayPoint) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{118} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{120} } func (x *MostActiveDayPoint) GetDay() int32 { @@ -9910,28 +10549,31 @@ func (x *MostActiveDayPoint) GetValue() int32 { // 艺人指标日期窗口响应 type ArtistMetricsDailyWindowResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - FansCount int64 `protobuf:"varint,1,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 - ViewsCount int64 `protobuf:"varint,2,opt,name=viewsCount,proto3" json:"viewsCount"` // 播放量 - LikesCount int64 `protobuf:"varint,3,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,4,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,5,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - Fans []*SimplePoint `protobuf:"bytes,6,rep,name=fans,proto3" json:"fans"` // 粉丝数序列 - Views []*SimplePoint `protobuf:"bytes,7,rep,name=views,proto3" json:"views"` // 播放量序列 - Likes []*SimplePoint `protobuf:"bytes,8,rep,name=likes,proto3" json:"likes"` // 点赞数序列 - Comments []*SimplePoint `protobuf:"bytes,9,rep,name=comments,proto3" json:"comments"` // 评论数序列 - Shares []*SimplePoint `protobuf:"bytes,10,rep,name=shares,proto3" json:"shares"` // 分享数序列 - BestPostTime []*BestPostTimePoint `protobuf:"bytes,11,rep,name=bestPostTime,proto3" json:"bestPostTime"` // 最佳发布时间 - MostActiveDay []*MostActiveDayPoint `protobuf:"bytes,12,rep,name=mostActiveDay,proto3" json:"mostActiveDay"` // 最活跃日期 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FansCount int64 `protobuf:"varint,1,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 + ViewsCount int64 `protobuf:"varint,2,opt,name=viewsCount,proto3" json:"viewsCount"` // 播放量 + LikesCount int64 `protobuf:"varint,3,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,4,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,5,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + Fans []*SimplePoint `protobuf:"bytes,6,rep,name=fans,proto3" json:"fans"` // 粉丝数序列 + Views []*SimplePoint `protobuf:"bytes,7,rep,name=views,proto3" json:"views"` // 播放量序列 + Likes []*SimplePoint `protobuf:"bytes,8,rep,name=likes,proto3" json:"likes"` // 点赞数序列 + Comments []*SimplePoint `protobuf:"bytes,9,rep,name=comments,proto3" json:"comments"` // 评论数序列 + Shares []*SimplePoint `protobuf:"bytes,10,rep,name=shares,proto3" json:"shares"` // 分享数序列 + BestPostTime []*BestPostTimePoint `protobuf:"bytes,11,rep,name=bestPostTime,proto3" json:"bestPostTime"` // 最佳发布时间 + MostActiveDay []*MostActiveDayPoint `protobuf:"bytes,12,rep,name=mostActiveDay,proto3" json:"mostActiveDay"` // 最活跃日期 } func (x *ArtistMetricsDailyWindowResp) Reset() { *x = ArtistMetricsDailyWindowResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[119] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[121] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistMetricsDailyWindowResp) String() string { @@ -9941,8 +10583,8 @@ func (x *ArtistMetricsDailyWindowResp) String() string { func (*ArtistMetricsDailyWindowResp) ProtoMessage() {} func (x *ArtistMetricsDailyWindowResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[119] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[121] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9954,7 +10596,7 @@ func (x *ArtistMetricsDailyWindowResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistMetricsDailyWindowResp.ProtoReflect.Descriptor instead. func (*ArtistMetricsDailyWindowResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{119} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{121} } func (x *ArtistMetricsDailyWindowResp) GetFansCount() int64 { @@ -10043,19 +10685,22 @@ func (x *ArtistMetricsDailyWindowResp) GetMostActiveDay() []*MostActiveDayPoint // 待确认数据列表请求 type TobeConfirmedListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - Page int32 `protobuf:"varint,2,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,3,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + Page int32 `protobuf:"varint,2,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,3,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 } func (x *TobeConfirmedListReq) Reset() { *x = TobeConfirmedListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[120] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[122] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *TobeConfirmedListReq) String() string { @@ -10065,8 +10710,8 @@ func (x *TobeConfirmedListReq) String() string { func (*TobeConfirmedListReq) ProtoMessage() {} func (x *TobeConfirmedListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[120] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[122] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10078,7 +10723,7 @@ func (x *TobeConfirmedListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use TobeConfirmedListReq.ProtoReflect.Descriptor instead. func (*TobeConfirmedListReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{120} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{122} } func (x *TobeConfirmedListReq) GetArtistUuid() string { @@ -10104,32 +10749,35 @@ func (x *TobeConfirmedListReq) GetPageSize() int32 { // 待确认数据项 type TobeConfirmedItem struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 标题 - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 内容 - WorkCategory int32 `protobuf:"varint,4,opt,name=workCategory,proto3" json:"workCategory"` // 作品类型 1 图文 2 视频 - UpdateTime string `protobuf:"bytes,5,opt,name=updateTime,proto3" json:"updateTime"` // 更新时间 - WorkStatus int32 `protobuf:"varint,6,opt,name=workStatus,proto3" json:"workStatus"` // 状态 - PlatformIds string `protobuf:"bytes,7,opt,name=platformIds,proto3" json:"platformIds"` // 平台ID集合 - ArtistName string `protobuf:"bytes,8,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 - ArtistUuid string `protobuf:"bytes,9,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - MediaAccUserIds string `protobuf:"bytes,10,opt,name=mediaAccUserIds,proto3" json:"mediaAccUserIds"` // 自媒体账号user_ids集合 - MediaNames string `protobuf:"bytes,11,opt,name=mediaNames,proto3" json:"mediaNames"` // 自媒体账号名称集合 - ConfirmedAt int64 `protobuf:"varint,12,opt,name=confirmedAt,proto3" json:"confirmedAt"` // 确认时间 - ItemType int32 `protobuf:"varint,13,opt,name=itemType,proto3" json:"itemType"` // 类型 1 数据分析 2 作品 - CreatedAt int32 `protobuf:"varint,14,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,15,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - DeletedAt uint64 `protobuf:"varint,16,opt,name=deletedAt,proto3" json:"deletedAt"` // 删除时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 标题 + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 内容 + WorkCategory int32 `protobuf:"varint,4,opt,name=workCategory,proto3" json:"workCategory"` // 作品类型 1 图文 2 视频 + UpdateTime string `protobuf:"bytes,5,opt,name=updateTime,proto3" json:"updateTime"` // 更新时间 + WorkStatus int32 `protobuf:"varint,6,opt,name=workStatus,proto3" json:"workStatus"` // 状态 + PlatformIds string `protobuf:"bytes,7,opt,name=platformIds,proto3" json:"platformIds"` // 平台ID集合 + ArtistName string `protobuf:"bytes,8,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 + ArtistUuid string `protobuf:"bytes,9,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + MediaAccUserIds string `protobuf:"bytes,10,opt,name=mediaAccUserIds,proto3" json:"mediaAccUserIds"` // 自媒体账号user_ids集合 + MediaNames string `protobuf:"bytes,11,opt,name=mediaNames,proto3" json:"mediaNames"` // 自媒体账号名称集合 + ConfirmedAt int64 `protobuf:"varint,12,opt,name=confirmedAt,proto3" json:"confirmedAt"` // 确认时间 + ItemType int32 `protobuf:"varint,13,opt,name=itemType,proto3" json:"itemType"` // 类型 1 数据分析 2 作品 + CreatedAt int32 `protobuf:"varint,14,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,15,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 + DeletedAt uint64 `protobuf:"varint,16,opt,name=deletedAt,proto3" json:"deletedAt"` // 删除时间 } func (x *TobeConfirmedItem) Reset() { *x = TobeConfirmedItem{} - mi := &file_pb_fiee_cast_proto_msgTypes[121] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[123] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *TobeConfirmedItem) String() string { @@ -10139,8 +10787,8 @@ func (x *TobeConfirmedItem) String() string { func (*TobeConfirmedItem) ProtoMessage() {} func (x *TobeConfirmedItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[121] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[123] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10152,7 +10800,7 @@ func (x *TobeConfirmedItem) ProtoReflect() protoreflect.Message { // Deprecated: Use TobeConfirmedItem.ProtoReflect.Descriptor instead. func (*TobeConfirmedItem) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{121} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{123} } func (x *TobeConfirmedItem) GetUuid() string { @@ -10269,18 +10917,21 @@ func (x *TobeConfirmedItem) GetDeletedAt() uint64 { // 待确认数据列表响应 type TobeConfirmedListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*TobeConfirmedItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 待确认数据列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*TobeConfirmedItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 待确认数据列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *TobeConfirmedListResp) Reset() { *x = TobeConfirmedListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[122] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[124] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *TobeConfirmedListResp) String() string { @@ -10290,8 +10941,8 @@ func (x *TobeConfirmedListResp) String() string { func (*TobeConfirmedListResp) ProtoMessage() {} func (x *TobeConfirmedListResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[122] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[124] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10303,7 +10954,7 @@ func (x *TobeConfirmedListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use TobeConfirmedListResp.ProtoReflect.Descriptor instead. func (*TobeConfirmedListResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{122} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{124} } func (x *TobeConfirmedListResp) GetData() []*TobeConfirmedItem { @@ -10321,18 +10972,21 @@ func (x *TobeConfirmedListResp) GetCount() int64 { } type UpdateWorkAnalysisApprovalIDReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - ApprovalID string `protobuf:"bytes,2,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + ApprovalID string `protobuf:"bytes,2,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID } func (x *UpdateWorkAnalysisApprovalIDReq) Reset() { *x = UpdateWorkAnalysisApprovalIDReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[123] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[125] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkAnalysisApprovalIDReq) String() string { @@ -10342,8 +10996,8 @@ func (x *UpdateWorkAnalysisApprovalIDReq) String() string { func (*UpdateWorkAnalysisApprovalIDReq) ProtoMessage() {} func (x *UpdateWorkAnalysisApprovalIDReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[123] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[125] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10355,7 +11009,7 @@ func (x *UpdateWorkAnalysisApprovalIDReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkAnalysisApprovalIDReq.ProtoReflect.Descriptor instead. func (*UpdateWorkAnalysisApprovalIDReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{123} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{125} } func (x *UpdateWorkAnalysisApprovalIDReq) GetUuid() string { @@ -10374,31 +11028,34 @@ func (x *UpdateWorkAnalysisApprovalIDReq) GetApprovalID() string { // 账号日级指标项 type MediaMetricsDailyItem struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID(可选,为空时自动生成) - ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - MediaAccUserID string `protobuf:"bytes,3,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID - MediaName string `protobuf:"bytes,4,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 - ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - PlatformID uint32 `protobuf:"varint,7,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion - Date int32 `protobuf:"varint,8,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) - FansCount int64 `protobuf:"varint,9,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 - ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 - LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 - ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图片数 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID(可选,为空时自动生成) + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + MediaAccUserID string `protobuf:"bytes,3,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID + MediaName string `protobuf:"bytes,4,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 + ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + PlatformID uint32 `protobuf:"varint,7,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion + Date int32 `protobuf:"varint,8,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) + FansCount int64 `protobuf:"varint,9,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 + ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 + ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图片数 } func (x *MediaMetricsDailyItem) Reset() { *x = MediaMetricsDailyItem{} - mi := &file_pb_fiee_cast_proto_msgTypes[124] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[126] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaMetricsDailyItem) String() string { @@ -10408,8 +11065,8 @@ func (x *MediaMetricsDailyItem) String() string { func (*MediaMetricsDailyItem) ProtoMessage() {} func (x *MediaMetricsDailyItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[124] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[126] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10421,7 +11078,7 @@ func (x *MediaMetricsDailyItem) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaMetricsDailyItem.ProtoReflect.Descriptor instead. func (*MediaMetricsDailyItem) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{124} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{126} } func (x *MediaMetricsDailyItem) GetUuid() string { @@ -10531,17 +11188,20 @@ func (x *MediaMetricsDailyItem) GetImageCount() int64 { // 批量插入或更新账号日级指标请求 type UpsertMediaMetricsDailyBatchReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*MediaMetricsDailyItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 指标数据列表 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*MediaMetricsDailyItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 指标数据列表 } func (x *UpsertMediaMetricsDailyBatchReq) Reset() { *x = UpsertMediaMetricsDailyBatchReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[125] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[127] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpsertMediaMetricsDailyBatchReq) String() string { @@ -10551,8 +11211,8 @@ func (x *UpsertMediaMetricsDailyBatchReq) String() string { func (*UpsertMediaMetricsDailyBatchReq) ProtoMessage() {} func (x *UpsertMediaMetricsDailyBatchReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[125] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[127] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10564,7 +11224,7 @@ func (x *UpsertMediaMetricsDailyBatchReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertMediaMetricsDailyBatchReq.ProtoReflect.Descriptor instead. func (*UpsertMediaMetricsDailyBatchReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{125} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{127} } func (x *UpsertMediaMetricsDailyBatchReq) GetData() []*MediaMetricsDailyItem { @@ -10576,17 +11236,20 @@ func (x *UpsertMediaMetricsDailyBatchReq) GetData() []*MediaMetricsDailyItem { // 批量插入或更新账号日级指标响应 type UpsertMediaMetricsDailyBatchResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success"` // 是否成功 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success"` // 是否成功 } func (x *UpsertMediaMetricsDailyBatchResp) Reset() { *x = UpsertMediaMetricsDailyBatchResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[126] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[128] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpsertMediaMetricsDailyBatchResp) String() string { @@ -10596,8 +11259,8 @@ func (x *UpsertMediaMetricsDailyBatchResp) String() string { func (*UpsertMediaMetricsDailyBatchResp) ProtoMessage() {} func (x *UpsertMediaMetricsDailyBatchResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[126] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[128] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10609,7 +11272,7 @@ func (x *UpsertMediaMetricsDailyBatchResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertMediaMetricsDailyBatchResp.ProtoReflect.Descriptor instead. func (*UpsertMediaMetricsDailyBatchResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{126} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{128} } func (x *UpsertMediaMetricsDailyBatchResp) GetSuccess() bool { @@ -10621,29 +11284,32 @@ func (x *UpsertMediaMetricsDailyBatchResp) GetSuccess() bool { // 作品日级指标项 type WorkMetricsDailyItem struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID(可选,为空时自动生成) - WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID - ArtistUuid string `protobuf:"bytes,3,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - MediaAccUserID string `protobuf:"bytes,4,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID - MediaName string `protobuf:"bytes,5,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 - ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - PlatformID uint32 `protobuf:"varint,8,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion - Date int32 `protobuf:"varint,9,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) - ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 - LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID(可选,为空时自动生成) + WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID + ArtistUuid string `protobuf:"bytes,3,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + MediaAccUserID string `protobuf:"bytes,4,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID + MediaName string `protobuf:"bytes,5,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 + ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + PlatformID uint32 `protobuf:"varint,8,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion + Date int32 `protobuf:"varint,9,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) + ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 } func (x *WorkMetricsDailyItem) Reset() { *x = WorkMetricsDailyItem{} - mi := &file_pb_fiee_cast_proto_msgTypes[127] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[129] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkMetricsDailyItem) String() string { @@ -10653,8 +11319,8 @@ func (x *WorkMetricsDailyItem) String() string { func (*WorkMetricsDailyItem) ProtoMessage() {} func (x *WorkMetricsDailyItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[127] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[129] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10666,7 +11332,7 @@ func (x *WorkMetricsDailyItem) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkMetricsDailyItem.ProtoReflect.Descriptor instead. func (*WorkMetricsDailyItem) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{127} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{129} } func (x *WorkMetricsDailyItem) GetUuid() string { @@ -10762,17 +11428,20 @@ func (x *WorkMetricsDailyItem) GetSharesCount() int64 { // 批量插入或更新作品日级指标请求 type UpsertWorkMetricsDailyBatchReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*WorkMetricsDailyItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 指标数据列表 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*WorkMetricsDailyItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 指标数据列表 } func (x *UpsertWorkMetricsDailyBatchReq) Reset() { *x = UpsertWorkMetricsDailyBatchReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[128] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[130] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpsertWorkMetricsDailyBatchReq) String() string { @@ -10782,8 +11451,8 @@ func (x *UpsertWorkMetricsDailyBatchReq) String() string { func (*UpsertWorkMetricsDailyBatchReq) ProtoMessage() {} func (x *UpsertWorkMetricsDailyBatchReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[128] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[130] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10795,7 +11464,7 @@ func (x *UpsertWorkMetricsDailyBatchReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertWorkMetricsDailyBatchReq.ProtoReflect.Descriptor instead. func (*UpsertWorkMetricsDailyBatchReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{128} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{130} } func (x *UpsertWorkMetricsDailyBatchReq) GetData() []*WorkMetricsDailyItem { @@ -10807,17 +11476,20 @@ func (x *UpsertWorkMetricsDailyBatchReq) GetData() []*WorkMetricsDailyItem { // 批量插入或更新作品日级指标响应 type UpsertWorkMetricsDailyBatchResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success"` // 是否成功 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success"` // 是否成功 } func (x *UpsertWorkMetricsDailyBatchResp) Reset() { *x = UpsertWorkMetricsDailyBatchResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[129] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[131] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpsertWorkMetricsDailyBatchResp) String() string { @@ -10827,8 +11499,8 @@ func (x *UpsertWorkMetricsDailyBatchResp) String() string { func (*UpsertWorkMetricsDailyBatchResp) ProtoMessage() {} func (x *UpsertWorkMetricsDailyBatchResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[129] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[131] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10840,7 +11512,7 @@ func (x *UpsertWorkMetricsDailyBatchResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertWorkMetricsDailyBatchResp.ProtoReflect.Descriptor instead. func (*UpsertWorkMetricsDailyBatchResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{129} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{131} } func (x *UpsertWorkMetricsDailyBatchResp) GetSuccess() bool { @@ -10852,21 +11524,24 @@ func (x *UpsertWorkMetricsDailyBatchResp) GetSuccess() bool { // 获取艺人AyrShare信息请求 type GetArtistAyrShareInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - Status int32 `protobuf:"varint,3,opt,name=status,proto3" json:"status"` // 状态 1 有效 - Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + Status int32 `protobuf:"varint,3,opt,name=status,proto3" json:"status"` // 状态 1 有效 + Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 } func (x *GetArtistAyrShareInfoReq) Reset() { *x = GetArtistAyrShareInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[130] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[132] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetArtistAyrShareInfoReq) String() string { @@ -10876,8 +11551,8 @@ func (x *GetArtistAyrShareInfoReq) String() string { func (*GetArtistAyrShareInfoReq) ProtoMessage() {} func (x *GetArtistAyrShareInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[130] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[132] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10889,7 +11564,7 @@ func (x *GetArtistAyrShareInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetArtistAyrShareInfoReq.ProtoReflect.Descriptor instead. func (*GetArtistAyrShareInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{130} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{132} } func (x *GetArtistAyrShareInfoReq) GetArtistUuid() string { @@ -10929,25 +11604,28 @@ func (x *GetArtistAyrShareInfoReq) GetPageSize() int32 { // 艺人AyrShare信息 type ArtistAyrShareInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - RefId string `protobuf:"bytes,4,opt,name=refId,proto3" json:"refId"` // AyrShare引用ID - ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key - AyrShareCreateTime string `protobuf:"bytes,6,opt,name=ayrShareCreateTime,proto3" json:"ayrShareCreateTime"` // AyrShare创建时间 - Status int32 `protobuf:"varint,7,opt,name=status,proto3" json:"status"` // 状态 1 有效 - CreatedAt int32 `protobuf:"varint,8,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,9,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + RefId string `protobuf:"bytes,4,opt,name=refId,proto3" json:"refId"` // AyrShare引用ID + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key + AyrShareCreateTime string `protobuf:"bytes,6,opt,name=ayrShareCreateTime,proto3" json:"ayrShareCreateTime"` // AyrShare创建时间 + Status int32 `protobuf:"varint,7,opt,name=status,proto3" json:"status"` // 状态 1 有效 + CreatedAt int32 `protobuf:"varint,8,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,9,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *ArtistAyrShareInfo) Reset() { *x = ArtistAyrShareInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[131] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[133] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistAyrShareInfo) String() string { @@ -10957,8 +11635,8 @@ func (x *ArtistAyrShareInfo) String() string { func (*ArtistAyrShareInfo) ProtoMessage() {} func (x *ArtistAyrShareInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[131] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[133] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10970,7 +11648,7 @@ func (x *ArtistAyrShareInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistAyrShareInfo.ProtoReflect.Descriptor instead. func (*ArtistAyrShareInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{131} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{133} } func (x *ArtistAyrShareInfo) GetUuid() string { @@ -11038,18 +11716,21 @@ func (x *ArtistAyrShareInfo) GetUpdatedAt() int32 { // 获取艺人AyrShare信息响应 type GetArtistAyrShareInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*ArtistAyrShareInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 艺人AyrShare信息列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*ArtistAyrShareInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 艺人AyrShare信息列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *GetArtistAyrShareInfoResp) Reset() { *x = GetArtistAyrShareInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[132] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[134] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetArtistAyrShareInfoResp) String() string { @@ -11059,8 +11740,8 @@ func (x *GetArtistAyrShareInfoResp) String() string { func (*GetArtistAyrShareInfoResp) ProtoMessage() {} func (x *GetArtistAyrShareInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[132] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[134] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11072,7 +11753,7 @@ func (x *GetArtistAyrShareInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetArtistAyrShareInfoResp.ProtoReflect.Descriptor instead. func (*GetArtistAyrShareInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{132} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{134} } func (x *GetArtistAyrShareInfoResp) GetData() []*ArtistAyrShareInfo { @@ -11091,20 +11772,23 @@ func (x *GetArtistAyrShareInfoResp) GetCount() int64 { // 获取作品平台信息列表请求 type ListWorkPlatformInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PlatformIDs []uint32 `protobuf:"varint,1,rep,packed,name=platformIDs,proto3" json:"platformIDs"` // 平台ID列表 - PublishMediaStatus int32 `protobuf:"varint,2,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` // 发布状态 0 全部 1 正常 2 异常 - Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlatformIDs []uint32 `protobuf:"varint,1,rep,packed,name=platformIDs,proto3" json:"platformIDs"` // 平台ID列表 + PublishMediaStatus int32 `protobuf:"varint,2,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` // 发布状态 0 全部 1 正常 2 异常 + Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 } func (x *ListWorkPlatformInfoReq) Reset() { *x = ListWorkPlatformInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[133] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[135] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListWorkPlatformInfoReq) String() string { @@ -11114,8 +11798,8 @@ func (x *ListWorkPlatformInfoReq) String() string { func (*ListWorkPlatformInfoReq) ProtoMessage() {} func (x *ListWorkPlatformInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[133] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[135] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11127,7 +11811,7 @@ func (x *ListWorkPlatformInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ListWorkPlatformInfoReq.ProtoReflect.Descriptor instead. func (*ListWorkPlatformInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{133} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{135} } func (x *ListWorkPlatformInfoReq) GetPlatformIDs() []uint32 { @@ -11160,26 +11844,35 @@ func (x *ListWorkPlatformInfoReq) GetPageSize() int32 { // 作品平台信息 type WorkPlatformInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID - MediaUserID string `protobuf:"bytes,3,opt,name=mediaUserID,proto3" json:"mediaUserID"` // 发布平台用户ID - PlatformID uint32 `protobuf:"varint,4,opt,name=platformID,proto3" json:"platformID"` // 平台ID - PublishResp string `protobuf:"bytes,5,opt,name=publishResp,proto3" json:"publishResp"` // 发布返回信息 - PublishMediaID string `protobuf:"bytes,6,opt,name=publishMediaID,proto3" json:"publishMediaID"` // 发布平台返回的作品ID - PublishMediaStatus int32 `protobuf:"varint,7,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` // 发布平台返回的作品状态 1 正常 2 异常 - Remark string `protobuf:"bytes,8,opt,name=remark,proto3" json:"remark"` // 备注 - CreatedAt int32 `protobuf:"varint,9,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,10,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID + MediaUserID string `protobuf:"bytes,3,opt,name=mediaUserID,proto3" json:"mediaUserID"` // 发布平台用户ID + PlatformID uint32 `protobuf:"varint,4,opt,name=platformID,proto3" json:"platformID"` // 平台ID + PublishResp string `protobuf:"bytes,5,opt,name=publishResp,proto3" json:"publishResp"` // 发布返回信息 + PublishMediaID string `protobuf:"bytes,6,opt,name=publishMediaID,proto3" json:"publishMediaID"` // 发布平台返回的作品ID + PublishMediaStatus int32 `protobuf:"varint,7,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` // 发布平台返回的作品状态 1 正常 2 异常 + Remark string `protobuf:"bytes,8,opt,name=remark,proto3" json:"remark"` // 备注 + CreatedAt int32 `protobuf:"varint,9,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,10,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 + ArtistUuid string `protobuf:"bytes,11,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + // 关联自媒体账号字段(通过artist_uuid关联cast_media_account表) + PlatformUserName string `protobuf:"bytes,12,opt,name=platformUserName,proto3" json:"platformUserName"` // 平台用户名 + PlatformUserID string `protobuf:"bytes,13,opt,name=platformUserID,proto3" json:"platformUserID"` // 平台用户ID + ArtistName string `protobuf:"bytes,14,opt,name=artistName,proto3" json:"artistName"` // 自媒体账号艺人名字 + ArtistPhone string `protobuf:"bytes,15,opt,name=artistPhone,proto3" json:"artistPhone"` // 自媒体账号艺人手机号 } func (x *WorkPlatformInfo) Reset() { *x = WorkPlatformInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[134] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[136] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkPlatformInfo) String() string { @@ -11189,8 +11882,8 @@ func (x *WorkPlatformInfo) String() string { func (*WorkPlatformInfo) ProtoMessage() {} func (x *WorkPlatformInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[134] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[136] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11202,7 +11895,7 @@ func (x *WorkPlatformInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkPlatformInfo.ProtoReflect.Descriptor instead. func (*WorkPlatformInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{134} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{136} } func (x *WorkPlatformInfo) GetUuid() string { @@ -11275,20 +11968,58 @@ func (x *WorkPlatformInfo) GetUpdatedAt() int32 { return 0 } +func (x *WorkPlatformInfo) GetArtistUuid() string { + if x != nil { + return x.ArtistUuid + } + return "" +} + +func (x *WorkPlatformInfo) GetPlatformUserName() string { + if x != nil { + return x.PlatformUserName + } + return "" +} + +func (x *WorkPlatformInfo) GetPlatformUserID() string { + if x != nil { + return x.PlatformUserID + } + return "" +} + +func (x *WorkPlatformInfo) GetArtistName() string { + if x != nil { + return x.ArtistName + } + return "" +} + +func (x *WorkPlatformInfo) GetArtistPhone() string { + if x != nil { + return x.ArtistPhone + } + return "" +} + // 获取作品平台信息列表响应 type ListWorkPlatformInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*WorkPlatformInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 作品平台信息列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*WorkPlatformInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 作品平台信息列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *ListWorkPlatformInfoResp) Reset() { *x = ListWorkPlatformInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[135] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[137] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListWorkPlatformInfoResp) String() string { @@ -11298,8 +12029,8 @@ func (x *ListWorkPlatformInfoResp) String() string { func (*ListWorkPlatformInfoResp) ProtoMessage() {} func (x *ListWorkPlatformInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[135] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[137] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11311,7 +12042,7 @@ func (x *ListWorkPlatformInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ListWorkPlatformInfoResp.ProtoReflect.Descriptor instead. func (*ListWorkPlatformInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{135} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{137} } func (x *ListWorkPlatformInfoResp) GetData() []*WorkPlatformInfo { @@ -11329,33 +12060,43 @@ func (x *ListWorkPlatformInfoResp) GetCount() int64 { } type WorkListResp_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - ArtistName string `protobuf:"bytes,2,opt,name=artistName,proto3" json:"artistName"` - ArtistPhone string `protobuf:"bytes,3,opt,name=artistPhone,proto3" json:"artistPhone"` - Title string `protobuf:"bytes,4,opt,name=title,proto3" json:"title"` - WorkCategory uint32 `protobuf:"varint,5,opt,name=workCategory,proto3" json:"workCategory"` - WorkStatus uint32 `protobuf:"varint,6,opt,name=workStatus,proto3" json:"workStatus"` - SubmitTime string `protobuf:"bytes,7,opt,name=submitTime,proto3" json:"submitTime"` - StatusUpdateTime string `protobuf:"bytes,8,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` - PlatformIDs []uint32 `protobuf:"varint,9,rep,packed,name=platformIDs,proto3" json:"platformIDs"` - MediaAccountNames []string `protobuf:"bytes,10,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` - MediaAccountUuids []string `protobuf:"bytes,11,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` - ManagerUserNames []string `protobuf:"bytes,12,rep,name=managerUserNames,proto3" json:"managerUserNames"` - ManagerUuids []string `protobuf:"bytes,13,rep,name=managerUuids,proto3" json:"managerUuids"` - ApprovalID string `protobuf:"bytes,14,opt,name=approvalID,proto3" json:"approvalID"` - CostType uint32 `protobuf:"varint,15,opt,name=costType,proto3" json:"costType"` - ScriptUuid string `protobuf:"bytes,16,opt,name=scriptUuid,proto3" json:"scriptUuid"` - ScriptTitle string `protobuf:"bytes,17,opt,name=scriptTitle,proto3" json:"scriptTitle"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + ArtistName string `protobuf:"bytes,2,opt,name=artistName,proto3" json:"artistName"` + ArtistPhone string `protobuf:"bytes,3,opt,name=artistPhone,proto3" json:"artistPhone"` + Title string `protobuf:"bytes,4,opt,name=title,proto3" json:"title"` + WorkCategory uint32 `protobuf:"varint,5,opt,name=workCategory,proto3" json:"workCategory"` + WorkStatus uint32 `protobuf:"varint,6,opt,name=workStatus,proto3" json:"workStatus"` + SubmitTime string `protobuf:"bytes,7,opt,name=submitTime,proto3" json:"submitTime"` + StatusUpdateTime string `protobuf:"bytes,8,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` + PlatformIDs []uint32 `protobuf:"varint,9,rep,packed,name=platformIDs,proto3" json:"platformIDs"` + MediaAccountNames []string `protobuf:"bytes,10,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` + MediaAccountUuids []string `protobuf:"bytes,11,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` + ManagerUserNames []string `protobuf:"bytes,12,rep,name=managerUserNames,proto3" json:"managerUserNames"` + ManagerUuids []string `protobuf:"bytes,13,rep,name=managerUuids,proto3" json:"managerUuids"` + ApprovalID string `protobuf:"bytes,14,opt,name=approvalID,proto3" json:"approvalID"` + CostType uint32 `protobuf:"varint,15,opt,name=costType,proto3" json:"costType"` + ScriptUuid string `protobuf:"bytes,16,opt,name=scriptUuid,proto3" json:"scriptUuid"` + ScriptTitle string `protobuf:"bytes,17,opt,name=scriptTitle,proto3" json:"scriptTitle"` + ArtistSubNum string `protobuf:"bytes,18,opt,name=artistSubNum,proto3" json:"artistSubNum"` + TiktokStatus uint32 `protobuf:"varint,19,opt,name=tiktokStatus,proto3" json:"tiktokStatus"` + InsStatus uint32 `protobuf:"varint,20,opt,name=insStatus,proto3" json:"insStatus"` + DmStatus uint32 `protobuf:"varint,21,opt,name=dmStatus,proto3" json:"dmStatus"` + ConfirmType uint32 `protobuf:"varint,22,opt,name=confirmType,proto3" json:"confirmType"` + YoutubeStatus uint32 `protobuf:"varint,23,opt,name=youtubeStatus,proto3" json:"youtubeStatus"` + BlueskyStatus uint32 `protobuf:"varint,24,opt,name=blueskyStatus,proto3" json:"blueskyStatus"` } func (x *WorkListResp_Info) Reset() { *x = WorkListResp_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[136] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[138] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkListResp_Info) String() string { @@ -11365,8 +12106,8 @@ func (x *WorkListResp_Info) String() string { func (*WorkListResp_Info) ProtoMessage() {} func (x *WorkListResp_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[136] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[138] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11378,7 +12119,7 @@ func (x *WorkListResp_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkListResp_Info.ProtoReflect.Descriptor instead. func (*WorkListResp_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{16, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{18, 0} } func (x *WorkListResp_Info) GetWorkUuid() string { @@ -11500,23 +12241,75 @@ func (x *WorkListResp_Info) GetScriptTitle() string { return "" } +func (x *WorkListResp_Info) GetArtistSubNum() string { + if x != nil { + return x.ArtistSubNum + } + return "" +} + +func (x *WorkListResp_Info) GetTiktokStatus() uint32 { + if x != nil { + return x.TiktokStatus + } + return 0 +} + +func (x *WorkListResp_Info) GetInsStatus() uint32 { + if x != nil { + return x.InsStatus + } + return 0 +} + +func (x *WorkListResp_Info) GetDmStatus() uint32 { + if x != nil { + return x.DmStatus + } + return 0 +} + +func (x *WorkListResp_Info) GetConfirmType() uint32 { + if x != nil { + return x.ConfirmType + } + return 0 +} + +func (x *WorkListResp_Info) GetYoutubeStatus() uint32 { + if x != nil { + return x.YoutubeStatus + } + return 0 +} + +func (x *WorkListResp_Info) GetBlueskyStatus() uint32 { + if x != nil { + return x.BlueskyStatus + } + return 0 +} + type MediaAccountsResp_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` - PlatformID uint32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` - FansCount uint32 `protobuf:"varint,2,opt,name=fansCount,proto3" json:"fansCount"` - WorkCount uint32 `protobuf:"varint,3,opt,name=workCount,proto3" json:"workCount"` - ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` - MediaAccountUuid string `protobuf:"bytes,5,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - MediaAccountName string `protobuf:"bytes,6,opt,name=mediaAccountName,proto3" json:"mediaAccountName"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlatformID uint32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` + FansCount uint32 `protobuf:"varint,2,opt,name=fansCount,proto3" json:"fansCount"` + WorkCount uint32 `protobuf:"varint,3,opt,name=workCount,proto3" json:"workCount"` + ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` + MediaAccountUuid string `protobuf:"bytes,5,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + MediaAccountName string `protobuf:"bytes,6,opt,name=mediaAccountName,proto3" json:"mediaAccountName"` } func (x *MediaAccountsResp_Info) Reset() { *x = MediaAccountsResp_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[138] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[140] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaAccountsResp_Info) String() string { @@ -11526,8 +12319,8 @@ func (x *MediaAccountsResp_Info) String() string { func (*MediaAccountsResp_Info) ProtoMessage() {} func (x *MediaAccountsResp_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[138] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[140] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11539,7 +12332,7 @@ func (x *MediaAccountsResp_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaAccountsResp_Info.ProtoReflect.Descriptor instead. func (*MediaAccountsResp_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{22, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{24, 0} } func (x *MediaAccountsResp_Info) GetPlatformID() uint32 { @@ -11585,26 +12378,29 @@ func (x *MediaAccountsResp_Info) GetMediaAccountName() string { } type MediaWorksResp_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` - WorkCategory uint32 `protobuf:"varint,4,opt,name=workCategory,proto3" json:"workCategory"` - WorkStatus uint32 `protobuf:"varint,5,opt,name=workStatus,proto3" json:"workStatus"` - SubmitTime string `protobuf:"bytes,6,opt,name=submitTime,proto3" json:"submitTime"` - StatusUpdateTime string `protobuf:"bytes,7,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` - Images []string `protobuf:"bytes,8,rep,name=images,proto3" json:"images"` - VideoUrl string `protobuf:"bytes,9,opt,name=videoUrl,proto3" json:"videoUrl"` - CoverUrl string `protobuf:"bytes,10,opt,name=coverUrl,proto3" json:"coverUrl"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` + WorkCategory uint32 `protobuf:"varint,4,opt,name=workCategory,proto3" json:"workCategory"` + WorkStatus uint32 `protobuf:"varint,5,opt,name=workStatus,proto3" json:"workStatus"` + SubmitTime string `protobuf:"bytes,6,opt,name=submitTime,proto3" json:"submitTime"` + StatusUpdateTime string `protobuf:"bytes,7,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` + Images []string `protobuf:"bytes,8,rep,name=images,proto3" json:"images"` + VideoUrl string `protobuf:"bytes,9,opt,name=videoUrl,proto3" json:"videoUrl"` + CoverUrl string `protobuf:"bytes,10,opt,name=coverUrl,proto3" json:"coverUrl"` } func (x *MediaWorksResp_Info) Reset() { *x = MediaWorksResp_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[139] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[141] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaWorksResp_Info) String() string { @@ -11614,8 +12410,8 @@ func (x *MediaWorksResp_Info) String() string { func (*MediaWorksResp_Info) ProtoMessage() {} func (x *MediaWorksResp_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[139] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[141] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11627,7 +12423,7 @@ func (x *MediaWorksResp_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaWorksResp_Info.ProtoReflect.Descriptor instead. func (*MediaWorksResp_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{24, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{26, 0} } func (x *MediaWorksResp_Info) GetWorkUuid() string { @@ -11701,18 +12497,21 @@ func (x *MediaWorksResp_Info) GetCoverUrl() string { } type PublishResp_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - WorkCategory int32 `protobuf:"varint,2,opt,name=workCategory,proto3" json:"workCategory"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + WorkCategory int32 `protobuf:"varint,2,opt,name=workCategory,proto3" json:"workCategory"` } func (x *PublishResp_Info) Reset() { *x = PublishResp_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[140] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[142] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishResp_Info) String() string { @@ -11722,8 +12521,8 @@ func (x *PublishResp_Info) String() string { func (*PublishResp_Info) ProtoMessage() {} func (x *PublishResp_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[140] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[142] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11735,7 +12534,7 @@ func (x *PublishResp_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use PublishResp_Info.ProtoReflect.Descriptor instead. func (*PublishResp_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{26, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{28, 0} } func (x *PublishResp_Info) GetArtistUuid() string { @@ -11753,19 +12552,22 @@ func (x *PublishResp_Info) GetWorkCategory() int32 { } type RefreshWorkListResp_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` PlatformInfoData []*RefreshWorkListResp_Info_PlatformInfo `protobuf:"bytes,2,rep,name=PlatformInfoData,proto3" json:"PlatformInfoData"` ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache } func (x *RefreshWorkListResp_Info) Reset() { *x = RefreshWorkListResp_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[141] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[143] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshWorkListResp_Info) String() string { @@ -11775,8 +12577,8 @@ func (x *RefreshWorkListResp_Info) String() string { func (*RefreshWorkListResp_Info) ProtoMessage() {} func (x *RefreshWorkListResp_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[141] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[143] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11788,7 +12590,7 @@ func (x *RefreshWorkListResp_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use RefreshWorkListResp_Info.ProtoReflect.Descriptor instead. func (*RefreshWorkListResp_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{41, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{43, 0} } func (x *RefreshWorkListResp_Info) GetWorkUuid() string { @@ -11813,22 +12615,25 @@ func (x *RefreshWorkListResp_Info) GetProfileKey() string { } type RefreshWorkListResp_Info_PlatformInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - PublishMediaID string `protobuf:"bytes,1,opt,name=publishMediaID,proto3" json:"publishMediaID"` - PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - PublishMediaStatus uint32 `protobuf:"varint,3,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` - MediaUserID string `protobuf:"bytes,4,opt,name=mediaUserID,proto3" json:"mediaUserID"` - PlatformUuid string `protobuf:"bytes,5,opt,name=platformUuid,proto3" json:"platformUuid"` - Token string `protobuf:"bytes,6,opt,name=token,proto3" json:"token"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PublishMediaID string `protobuf:"bytes,1,opt,name=publishMediaID,proto3" json:"publishMediaID"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + PublishMediaStatus uint32 `protobuf:"varint,3,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` + MediaUserID string `protobuf:"bytes,4,opt,name=mediaUserID,proto3" json:"mediaUserID"` + PlatformUuid string `protobuf:"bytes,5,opt,name=platformUuid,proto3" json:"platformUuid"` + Token string `protobuf:"bytes,6,opt,name=token,proto3" json:"token"` } func (x *RefreshWorkListResp_Info_PlatformInfo) Reset() { *x = RefreshWorkListResp_Info_PlatformInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[142] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[144] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshWorkListResp_Info_PlatformInfo) String() string { @@ -11838,8 +12643,8 @@ func (x *RefreshWorkListResp_Info_PlatformInfo) String() string { func (*RefreshWorkListResp_Info_PlatformInfo) ProtoMessage() {} func (x *RefreshWorkListResp_Info_PlatformInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[142] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[144] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11851,7 +12656,7 @@ func (x *RefreshWorkListResp_Info_PlatformInfo) ProtoReflect() protoreflect.Mess // Deprecated: Use RefreshWorkListResp_Info_PlatformInfo.ProtoReflect.Descriptor instead. func (*RefreshWorkListResp_Info_PlatformInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{41, 0, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{43, 0, 0} } func (x *RefreshWorkListResp_Info_PlatformInfo) GetPublishMediaID() string { @@ -11897,21 +12702,24 @@ func (x *RefreshWorkListResp_Info_PlatformInfo) GetToken() string { } type UpdateOAuthReq_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - AsID string `protobuf:"bytes,3,opt,name=asID,proto3" json:"asID"` - PlatformUserName string `protobuf:"bytes,4,opt,name=platformUserName,proto3" json:"platformUserName"` - AutInfo string `protobuf:"bytes,5,opt,name=autInfo,proto3" json:"autInfo"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + AsID string `protobuf:"bytes,3,opt,name=asID,proto3" json:"asID"` + PlatformUserName string `protobuf:"bytes,4,opt,name=platformUserName,proto3" json:"platformUserName"` + AutInfo string `protobuf:"bytes,5,opt,name=autInfo,proto3" json:"autInfo"` } func (x *UpdateOAuthReq_Info) Reset() { *x = UpdateOAuthReq_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[143] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[145] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateOAuthReq_Info) String() string { @@ -11921,8 +12729,8 @@ func (x *UpdateOAuthReq_Info) String() string { func (*UpdateOAuthReq_Info) ProtoMessage() {} func (x *UpdateOAuthReq_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[143] - if x != nil { + mi := &file_pb_fiee_cast_proto_msgTypes[145] + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11934,7 +12742,7 @@ func (x *UpdateOAuthReq_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateOAuthReq_Info.ProtoReflect.Descriptor instead. func (*UpdateOAuthReq_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{50, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{52, 0} } func (x *UpdateOAuthReq_Info) GetArtistUuid() string { @@ -11974,1459 +12782,2406 @@ func (x *UpdateOAuthReq_Info) GetAutInfo() string { var File_pb_fiee_cast_proto protoreflect.FileDescriptor -const file_pb_fiee_cast_proto_rawDesc = "" + - "\n" + - "\x12pb/fiee/cast.proto\x12\x04Cast\x1a\x15common/wrappers.proto\x1a\x17common/descriptor.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x15common/validate.proto\"\xaa\x03\n" + - "\x10MediaUserListReq\x12\x1c\n" + - "\tartistVal\x18\x01 \x01(\tR\tartistVal\x12\x1e\n" + - "\n" + - "managerVal\x18\x02 \x01(\tR\n" + - "managerVal\x12*\n" + - "\x10platformUserName\x18\x03 \x01(\tR\x10platformUserName\x124\n" + - "\n" + - "platformID\x18\x04 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12\x12\n" + - "\x04page\x18\x05 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x06 \x01(\x05R\bpageSize\x12\x1e\n" + - "\n" + - "artistUuid\x18\a \x01(\tR\n" + - "artistUuid\x12(\n" + - "\x0fcreateStartDate\x18\b \x01(\tR\x0fcreateStartDate\x12$\n" + - "\rcreateEndDate\x18\t \x01(\tR\rcreateEndDate\x124\n" + - "\n" + - "authStatus\x18\n" + - " \x01(\x0e2\x14.Cast.AuthStatusENUMR\n" + - "authStatus\x12 \n" + - "\vmediaUserID\x18\v \x01(\tR\vmediaUserID\"\x8d\x03\n" + - "\rMediaUserInfo\x12*\n" + - "\x10platformUserName\x18\x01 \x01(\tR\x10platformUserName\x12\x1e\n" + - "\n" + - "platformID\x18\x02 \x01(\rR\n" + - "platformID\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x04 \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "artistUuid\x18\x05 \x01(\tR\n" + - "artistUuid\x12(\n" + - "\x0fmanagerUserName\x18\x06 \x01(\tR\x0fmanagerUserName\x12 \n" + - "\vmanagerUuid\x18\a \x01(\tR\vmanagerUuid\x12*\n" + - "\x10mediaAccountUuid\x18\b \x01(\tR\x10mediaAccountUuid\x12 \n" + - "\vcreatedDate\x18\t \x01(\tR\vcreatedDate\x124\n" + - "\n" + - "authStatus\x18\n" + - " \x01(\x0e2\x14.Cast.AuthStatusENUMR\n" + - "authStatus\"R\n" + - "\x11MediaUserListResp\x12'\n" + - "\x04data\x18\x01 \x03(\v2\x13.Cast.MediaUserInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"\xad\x03\n" + - "\x15UpdateMediaAccountReq\x124\n" + - "\n" + - "platformID\x18\x01 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12*\n" + - "\x10platformUserName\x18\x02 \x01(\tR\x10platformUserName\x12&\n" + - "\x0eplatformUserID\x18\x03 \x01(\tR\x0eplatformUserID\x12\x1e\n" + - "\n" + - "artistUuid\x18\x04 \x01(\tR\n" + - "artistUuid\x12\x1e\n" + - "\n" + - "artistName\x18\x05 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x06 \x01(\tR\vartistPhone\x12*\n" + - "\x10mediaAccountUuid\x18\a \x01(\tR\x10mediaAccountUuid\x12 \n" + - "\vmanagerUuid\x18\b \x01(\tR\vmanagerUuid\x12(\n" + - "\x0fmanagerUserName\x18\t \x01(\tR\x0fmanagerUserName\x120\n" + - "\x13artistPhoneAreaCode\x18\n" + - " \x01(\tR\x13artistPhoneAreaCode\"D\n" + - "\x16UpdateMediaAccountResp\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\">\n" + - "\x10UnbindManagerReq\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\"A\n" + - "\x11UnbindManagerResp\x12,\n" + - "\x11oldBindArtistUuid\x18\x01 \x01(\tR\x11oldBindArtistUuid\"\x88\x01\n" + - "\x0eBindManagerReq\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\x12 \n" + - "\vmanagerUuid\x18\x02 \x01(\tR\vmanagerUuid\x12(\n" + - "\x0fmanagerUserName\x18\x03 \x01(\tR\x0fmanagerUserName\"\x8e\x06\n" + - "\x12UpdateWorkImageReq\x12\x14\n" + - "\x05title\x18\x01 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x02 \x01(\tR\acontent\x12\x16\n" + - "\x06images\x18\x03 \x03(\tR\x06images\x12,\n" + - "\x11mediaAccountUuids\x18\x04 \x03(\tR\x11mediaAccountUuids\x12,\n" + - "\x11mediaAccountNames\x18\x05 \x03(\tR\x11mediaAccountNames\x126\n" + - "\vplatformIDs\x18\x06 \x03(\x0e2\x14.Cast.PlatformIDENUMR\vplatformIDs\x12;\n" + - "\x0epublishConfig1\x18\a \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig1\x12;\n" + - "\x0epublishConfig2\x18\b \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig2\x12;\n" + - "\x0epublishConfig3\x18\t \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig3\x12;\n" + - "\x0epublishConfig4\x18\n" + - " \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig4\x12\x16\n" + - "\x06action\x18\v \x01(\tR\x06action\x12\x1a\n" + - "\bworkUuid\x18\f \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\r \x01(\tR\n" + - "artistUuid\x12 \n" + - "\vartistPhone\x18\x0e \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "artistName\x18\x0f \x01(\tR\n" + - "artistName\x120\n" + - "\x13artistPhoneAreaCode\x18\x10 \x01(\tR\x13artistPhoneAreaCode\x12\x16\n" + - "\x06source\x18\x11 \x01(\rR\x06source\x12\x16\n" + - "\x06lineNo\x18\x12 \x01(\rR\x06lineNo\x12\x16\n" + - "\x06remark\x18\x13 \x01(\tR\x06remark\x12\x18\n" + - "\asuccess\x18\x14 \x01(\bR\asuccess\"1\n" + - "\x13UpdateWorkImageResp\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\"\xbf\x01\n" + - "\rPublishConfig\x12$\n" + - "\rforbidComment\x18\x01 \x01(\rR\rforbidComment\x12\x1e\n" + - "\n" + - "publicType\x18\x02 \x01(\rR\n" + - "publicType\x12\x18\n" + - "\acanJoin\x18\x03 \x01(\rR\acanJoin\x12\x1a\n" + - "\bcanQuote\x18\x04 \x01(\rR\bcanQuote\x12\x1e\n" + - "\n" + - "canComment\x18\x05 \x01(\rR\n" + - "canComment\x12\x12\n" + - "\x04isAI\x18\x06 \x01(\rR\x04isAI\"\xe9\x06\n" + - "\x12UpdateWorkVideoReq\x12\x14\n" + - "\x05title\x18\x01 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x02 \x01(\tR\acontent\x12\x1a\n" + - "\bvideoUrl\x18\x03 \x01(\tR\bvideoUrl\x12\x1a\n" + - "\bcoverUrl\x18\x04 \x01(\tR\bcoverUrl\x12,\n" + - "\x11mediaAccountUuids\x18\x05 \x03(\tR\x11mediaAccountUuids\x12,\n" + - "\x11mediaAccountNames\x18\x06 \x03(\tR\x11mediaAccountNames\x126\n" + - "\vplatformIDs\x18\a \x03(\x0e2\x14.Cast.PlatformIDENUMR\vplatformIDs\x12;\n" + - "\x0epublishConfig1\x18\b \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig1\x12;\n" + - "\x0epublishConfig2\x18\t \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig2\x12;\n" + - "\x0epublishConfig3\x18\n" + - " \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig3\x12;\n" + - "\x0epublishConfig4\x18\v \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig4\x12\x16\n" + - "\x06action\x18\f \x01(\tR\x06action\x12\x1a\n" + - "\bworkUuid\x18\r \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x0e \x01(\tR\n" + - "artistUuid\x12 \n" + - "\vartistPhone\x18\x0f \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "artistName\x18\x10 \x01(\tR\n" + - "artistName\x120\n" + - "\x13artistPhoneAreaCode\x18\x11 \x01(\tR\x13artistPhoneAreaCode\x12\x16\n" + - "\x06source\x18\x12 \x01(\rR\x06source\x12*\n" + - "\x10coverTimestampMs\x18\x13 \x01(\x04R\x10coverTimestampMs\x127\n" + - "\vautoPublish\x18\x14 \x01(\x0e2\x15.Cast.AutoPublishENUMR\vautoPublish\x12\x1e\n" + - "\n" + - "scriptUuid\x18\x15 \x01(\tR\n" + - "scriptUuid\"1\n" + - "\x13UpdateWorkVideoResp\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\"\x90\x01\n" + - "\fMediaInfoReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x124\n" + - "\n" + - "platformID\x18\x02 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12*\n" + - "\x10platformUserName\x18\x03 \x01(\tR\x10platformUserName\"8\n" + - "\rMediaInfoResp\x12'\n" + - "\x04info\x18\x01 \x01(\v2\x13.Cast.MediaUserInfoR\x04info\"\xcb\x04\n" + - "\vWorkListReq\x12\x1c\n" + - "\tartistVal\x18\x01 \x01(\tR\tartistVal\x12\x1e\n" + - "\n" + - "platformID\x18\x02 \x01(\rR\n" + - "platformID\x12\"\n" + - "\fworkCategory\x18\x03 \x01(\rR\fworkCategory\x12(\n" + - "\x0fsubmitStartTime\x18\x04 \x01(\tR\x0fsubmitStartTime\x12$\n" + - "\rsubmitEndTime\x18\x05 \x01(\tR\rsubmitEndTime\x124\n" + - "\x15statusUpdateTimeStart\x18\x06 \x01(\tR\x15statusUpdateTimeStart\x120\n" + - "\x13statusUpdateTimeEnd\x18\a \x01(\tR\x13statusUpdateTimeEnd\x12\x14\n" + - "\x05title\x18\b \x01(\tR\x05title\x12\x1e\n" + - "\n" + - "workStatus\x18\t \x01(\rR\n" + - "workStatus\x12*\n" + - "\x10mediaAccountUuid\x18\n" + - " \x01(\tR\x10mediaAccountUuid\x12&\n" + - "\x0emanagerUserVal\x18\v \x01(\tR\x0emanagerUserVal\x12\x12\n" + - "\x04page\x18\f \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\r \x01(\x05R\bpageSize\x12,\n" + - "\x11mediaAccountUuids\x18\x0e \x03(\tR\x11mediaAccountUuids\x12\x1a\n" + - "\bcostType\x18\x0f \x01(\x05R\bcostType\x12\x1e\n" + - "\n" + - "scriptUuid\x18\x10 \x01(\tR\n" + - "scriptUuid\"\xaa\x05\n" + - "\fWorkListResp\x12+\n" + - "\x04data\x18\x01 \x03(\v2\x17.Cast.WorkListResp.InfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\x1a\xd6\x04\n" + - "\x04Info\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "artistName\x18\x02 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x03 \x01(\tR\vartistPhone\x12\x14\n" + - "\x05title\x18\x04 \x01(\tR\x05title\x12\"\n" + - "\fworkCategory\x18\x05 \x01(\rR\fworkCategory\x12\x1e\n" + - "\n" + - "workStatus\x18\x06 \x01(\rR\n" + - "workStatus\x12\x1e\n" + - "\n" + - "submitTime\x18\a \x01(\tR\n" + - "submitTime\x12*\n" + - "\x10statusUpdateTime\x18\b \x01(\tR\x10statusUpdateTime\x12 \n" + - "\vplatformIDs\x18\t \x03(\rR\vplatformIDs\x12,\n" + - "\x11mediaAccountNames\x18\n" + - " \x03(\tR\x11mediaAccountNames\x12,\n" + - "\x11mediaAccountUuids\x18\v \x03(\tR\x11mediaAccountUuids\x12*\n" + - "\x10managerUserNames\x18\f \x03(\tR\x10managerUserNames\x12\"\n" + - "\fmanagerUuids\x18\r \x03(\tR\fmanagerUuids\x12\x1e\n" + - "\n" + - "approvalID\x18\x0e \x01(\tR\n" + - "approvalID\x12\x1a\n" + - "\bcostType\x18\x0f \x01(\rR\bcostType\x12\x1e\n" + - "\n" + - "scriptUuid\x18\x10 \x01(\tR\n" + - "scriptUuid\x12 \n" + - "\vscriptTitle\x18\x11 \x01(\tR\vscriptTitle\"+\n" + - "\rWorkDetailReq\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\"\xfb\x01\n" + - "\vWorkLogInfo\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\"\n" + - "\foperatorName\x18\x04 \x01(\tR\foperatorName\x12\x1e\n" + - "\n" + - "operatorID\x18\x05 \x01(\tR\n" + - "operatorID\x12\x1e\n" + - "\n" + - "updateTime\x18\x06 \x01(\tR\n" + - "updateTime\x12\x1c\n" + - "\textraData\x18\a \x01(\tR\textraData\x12\x1e\n" + - "\n" + - "workStatus\x18\b \x01(\rR\n" + - "workStatus\"\xcd\b\n" + - "\x0eWorkDetailResp\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\x16\n" + - "\x06images\x18\x04 \x03(\tR\x06images\x12,\n" + - "\x11mediaAccountUuids\x18\x05 \x03(\tR\x11mediaAccountUuids\x12,\n" + - "\x11mediaAccountNames\x18\x06 \x03(\tR\x11mediaAccountNames\x12 \n" + - "\vplatformIDs\x18\a \x03(\rR\vplatformIDs\x12\x1e\n" + - "\n" + - "workStatus\x18\b \x01(\rR\n" + - "workStatus\x12;\n" + - "\x0epublishConfig1\x18\t \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig1\x12;\n" + - "\x0epublishConfig2\x18\n" + - " \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig2\x12;\n" + - "\x0epublishConfig3\x18\v \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig3\x12;\n" + - "\x0epublishConfig4\x18\f \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig4\x12\x1a\n" + - "\bvideoUrl\x18\r \x01(\tR\bvideoUrl\x12\x1a\n" + - "\bcoverUrl\x18\x0e \x01(\tR\bcoverUrl\x12\x1e\n" + - "\n" + - "approvalID\x18\x0f \x01(\tR\n" + - "approvalID\x123\n" + - "\vWorkLogData\x18\x10 \x03(\v2\x11.Cast.WorkLogInfoR\vWorkLogData\x12\"\n" + - "\fworkCategory\x18\x11 \x01(\rR\fworkCategory\x12J\n" + - "\fmediaAccData\x18\x12 \x03(\v2&.Cast.WorkDetailResp.MediaAccDataEntryR\fmediaAccData\x12*\n" + - "\x10coverTimestampMs\x18\x13 \x01(\x04R\x10coverTimestampMs\x12\x1e\n" + - "\n" + - "scriptUuid\x18\x14 \x01(\tR\n" + - "scriptUuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x15 \x01(\tR\n" + - "artistUuid\x12\"\n" + - "\ftiktokStatus\x18\x16 \x01(\rR\ftiktokStatus\x12\x1c\n" + - "\tinsStatus\x18\x17 \x01(\rR\tinsStatus\x12\x1a\n" + - "\bdmStatus\x18\x18 \x01(\rR\bdmStatus\x12(\n" + - "\x0fneedPlatformIDs\x18\x19 \x03(\x05R\x0fneedPlatformIDs\x1aT\n" + - "\x11MediaAccDataEntry\x12\x10\n" + - "\x03key\x18\x01 \x01(\tR\x03key\x12)\n" + - "\x05value\x18\x02 \x01(\v2\x13.Cast.MediaUserInfoR\x05value:\x028\x01\"\xca\x02\n" + - "\x0fUpdateStatusReq\x124\n" + - "\n" + - "workAction\x18\x01 \x01(\x0e2\x14.Cast.WorkActionENUMR\n" + - "workAction\x12\x1a\n" + - "\bworkUuid\x18\x02 \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "approvalID\x18\x03 \x01(\tR\n" + - "approvalID\x12$\n" + - "\rconfirmRemark\x18\x04 \x01(\tR\rconfirmRemark\x12$\n" + - "\rconfirmStatus\x18\x05 \x01(\rR\rconfirmStatus\x12$\n" + - "\rapprovalReply\x18\x06 \x01(\tR\rapprovalReply\x127\n" + - "\vautoPublish\x18\a \x01(\x0e2\x15.Cast.AutoPublishENUMR\vautoPublish\x12\x1a\n" + - "\bcostType\x18\b \x01(\rR\bcostType\"2\n" + - "\x10MediaAccountsReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\"\xa2\x02\n" + - "\x11MediaAccountsResp\x120\n" + - "\x04data\x18\x01 \x03(\v2\x1c.Cast.MediaAccountsResp.InfoR\x04data\x1a\xda\x01\n" + - "\x04Info\x12\x1e\n" + - "\n" + - "platformID\x18\x01 \x01(\rR\n" + - "platformID\x12\x1c\n" + - "\tfansCount\x18\x02 \x01(\rR\tfansCount\x12\x1c\n" + - "\tworkCount\x18\x03 \x01(\rR\tworkCount\x12\x1e\n" + - "\n" + - "artistUuid\x18\x04 \x01(\tR\n" + - "artistUuid\x12*\n" + - "\x10mediaAccountUuid\x18\x05 \x01(\tR\x10mediaAccountUuid\x12*\n" + - "\x10mediaAccountName\x18\x06 \x01(\tR\x10mediaAccountName\"k\n" + - "\rMediaWorksReq\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\x12\x12\n" + - "\x04page\x18\x02 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x03 \x01(\x05R\bpageSize\"\x8a\x03\n" + - "\x0eMediaWorksResp\x12\x14\n" + - "\x05count\x18\x01 \x01(\x03R\x05count\x12-\n" + - "\x04data\x18\x02 \x03(\v2\x19.Cast.MediaWorksResp.InfoR\x04data\x1a\xb2\x02\n" + - "\x04Info\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\"\n" + - "\fworkCategory\x18\x04 \x01(\rR\fworkCategory\x12\x1e\n" + - "\n" + - "workStatus\x18\x05 \x01(\rR\n" + - "workStatus\x12\x1e\n" + - "\n" + - "submitTime\x18\x06 \x01(\tR\n" + - "submitTime\x12*\n" + - "\x10statusUpdateTime\x18\a \x01(\tR\x10statusUpdateTime\x12\x16\n" + - "\x06images\x18\b \x03(\tR\x06images\x12\x1a\n" + - "\bvideoUrl\x18\t \x01(\tR\bvideoUrl\x12\x1a\n" + - "\bcoverUrl\x18\n" + - " \x01(\tR\bcoverUrl\"*\n" + - "\n" + - "PublishReq\x12\x1c\n" + - "\tworkUuids\x18\x01 \x03(\tR\tworkUuids\"\x85\x01\n" + - "\vPublishResp\x12*\n" + - "\x04data\x18\x01 \x03(\v2\x16.Cast.PublishResp.InfoR\x04data\x1aJ\n" + - "\x04Info\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\"\n" + - "\fworkCategory\x18\x02 \x01(\x05R\fworkCategory\"\x86\x01\n" + - "\fRePublishReq\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12,\n" + - "\x11mediaAccountUuids\x18\x02 \x03(\tR\x11mediaAccountUuids\x12,\n" + - "\x11mediaAccountNames\x18\x03 \x03(\tR\x11mediaAccountNames\"S\n" + - "\rRePublishResp\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\"\n" + - "\fworkCategory\x18\x02 \x01(\x05R\fworkCategory\"(\n" + - "\n" + - "DelWorkReq\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\")\n" + - "\vWorkInfoReq\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\"\xe6\x01\n" + - "\fWorkInfoResp\x12\x1e\n" + - "\n" + - "workStatus\x18\x01 \x01(\rR\n" + - "workStatus\x12\x1e\n" + - "\n" + - "artistUuid\x18\x02 \x01(\tR\n" + - "artistUuid\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x04 \x01(\tR\vartistPhone\x120\n" + - "\x13artistPhoneAreaCode\x18\x05 \x01(\tR\x13artistPhoneAreaCode\x12\"\n" + - "\fworkCategory\x18\x06 \x01(\rR\fworkCategory\"/\n" + - "\rArtistInfoReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\"\xd4\x01\n" + - "\x0eArtistInfoResp\x122\n" + - "\x14TikTokEffectiveCount\x18\x01 \x01(\rR\x14TikTokEffectiveCount\x124\n" + - "\x15YouTubeEffectiveCount\x18\x02 \x01(\rR\x15YouTubeEffectiveCount\x12,\n" + - "\x11InsEffectiveCount\x18\x03 \x01(\rR\x11InsEffectiveCount\x12*\n" + - "\x10DMEffectiveCount\x18\x04 \x01(\rR\x10DMEffectiveCount\"N\n" + - "\x12ImportWorkBatchReq\x128\n" + - "\n" + - "imageWorks\x18\x01 \x03(\v2\x18.Cast.UpdateWorkImageReqR\n" + - "imageWorks\"\x91\x01\n" + - "\x13ImportWorkBatchResp\x128\n" + - "\n" + - "imageWorks\x18\x01 \x03(\v2\x18.Cast.UpdateWorkImageReqR\n" + - "imageWorks\x12\"\n" + - "\fsuccessCount\x18\x02 \x01(\x05R\fsuccessCount\x12\x1c\n" + - "\tfailCount\x18\x03 \x01(\x05R\tfailCount\"\xdd\x02\n" + - "\fPlatformInfo\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12*\n" + - "\x10mediaAccountUuid\x18\x02 \x01(\tR\x10mediaAccountUuid\x12\x1e\n" + - "\n" + - "platformID\x18\x03 \x01(\rR\n" + - "platformID\x12 \n" + - "\vpublishType\x18\x04 \x01(\rR\vpublishType\x12 \n" + - "\vpublishResp\x18\x05 \x01(\tR\vpublishResp\x12&\n" + - "\x0epublishMediaId\x18\x06 \x01(\tR\x0epublishMediaId\x12=\n" + - "\rpublishStatus\x18\a \x01(\x0e2\x17.Cast.PublishStatusENUMR\rpublishStatus\x12\x16\n" + - "\x06remark\x18\b \x01(\tR\x06remark\x12\"\n" + - "\fplatformUuid\x18\t \x01(\tR\fplatformUuid\"[\n" + - "\x19UpdateWorkPlatformInfoReq\x12>\n" + - "\x10PlatformInfoData\x18\x01 \x03(\v2\x12.Cast.PlatformInfoR\x10PlatformInfoData\"8\n" + - "\x1aUpdateWorkPlatformInfoResp\x12\x1a\n" + - "\bworkUuid\x18\x01 \x03(\tR\bworkUuid\"\x9b\x01\n" + - "\x17UpdateWorkPublishLogReq\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x124\n" + - "\n" + - "platformID\x18\x02 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12\x16\n" + - "\x06detail\x18\x03 \x01(\tR\x06detail\x12\x16\n" + - "\x06action\x18\x04 \x01(\tR\x06action\":\n" + - "\x12RefreshWorkListReq\x12$\n" + - "\rpublishStatus\x18\x01 \x01(\rR\rpublishStatus\"\xe2\x03\n" + - "\x13RefreshWorkListResp\x122\n" + - "\x04Data\x18\x03 \x03(\v2\x1e.Cast.RefreshWorkListResp.InfoR\x04Data\x1a\x96\x03\n" + - "\x04Info\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12W\n" + - "\x10PlatformInfoData\x18\x02 \x03(\v2+.Cast.RefreshWorkListResp.Info.PlatformInfoR\x10PlatformInfoData\x12\x1e\n" + - "\n" + - "profileKey\x18\x03 \x01(\tR\n" + - "profileKey\x1a\xf8\x01\n" + - "\fPlatformInfo\x12&\n" + - "\x0epublishMediaID\x18\x01 \x01(\tR\x0epublishMediaID\x124\n" + - "\n" + - "platformID\x18\x02 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12.\n" + - "\x12publishMediaStatus\x18\x03 \x01(\rR\x12publishMediaStatus\x12 \n" + - "\vmediaUserID\x18\x04 \x01(\tR\vmediaUserID\x12\"\n" + - "\fplatformUuid\x18\x05 \x01(\tR\fplatformUuid\x12\x14\n" + - "\x05token\x18\x06 \x01(\tR\x05token\"=\n" + - "\x0fOAuthAccountReq\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\"$\n" + - "\x10OAuthAccountResp\x12\x10\n" + - "\x03url\x18\x01 \x01(\tR\x03url\"?\n" + - "\x11OAuthAccountV2Req\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\"\x8e\x01\n" + - "\x12OAuthAccountV2Resp\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\x1e\n" + - "\n" + - "profileKey\x18\x02 \x01(\tR\n" + - "profileKey\x12\x1e\n" + - "\n" + - "platformID\x18\x03 \x01(\rR\n" + - "platformID\x12\x18\n" + - "\aauthUrl\x18\x04 \x01(\tR\aauthUrl\"V\n" + - "\x14OAuthYoutubeTokenReq\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\x12\x12\n" + - "\x04code\x18\x02 \x01(\tR\x04code\"}\n" + - "\x15OAuthYoutubeTokenResp\x12 \n" + - "\vaccessToken\x18\x01 \x01(\tR\vaccessToken\x12\"\n" + - "\frefreshToken\x18\x02 \x01(\tR\frefreshToken\x12\x1e\n" + - "\n" + - "expireTime\x18\x03 \x01(\x03R\n" + - "expireTime\"w\n" + - "\x13OAuthCodeToTokenReq\x12\x12\n" + - "\x04code\x18\x01 \x01(\tR\x04code\x12\x16\n" + - "\x06userID\x18\x02 \x01(\tR\x06userID\x124\n" + - "\n" + - "platformID\x18\x03 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\"\x16\n" + - "\x14OAuthCodeToTokenResp\"\xf8\x01\n" + - "\x0eUpdateOAuthReq\x12-\n" + - "\x04Data\x18\x01 \x03(\v2\x19.Cast.UpdateOAuthReq.InfoR\x04Data\x1a\xb6\x01\n" + - "\x04Info\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x124\n" + - "\n" + - "platformID\x18\x02 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12\x12\n" + - "\x04asID\x18\x03 \x01(\tR\x04asID\x12*\n" + - "\x10platformUserName\x18\x04 \x01(\tR\x10platformUserName\x12\x18\n" + - "\aautInfo\x18\x05 \x01(\tR\aautInfo\"\x83\x01\n" + - "\x0fRefreshTokenReq\x12\"\n" + - "\frefreshToken\x18\x01 \x01(\tR\frefreshToken\x124\n" + - "\n" + - "platformID\x18\x02 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12\x16\n" + - "\x06userID\x18\x03 \x01(\tR\x06userID\"\\\n" + - "\x10RefreshTokenResp\x12 \n" + - "\vaccessToken\x18\x01 \x01(\tR\vaccessToken\x12&\n" + - "\x0eplatformUserID\x18\x02 \x01(\tR\x0eplatformUserID\"\x7f\n" + - "\x13PublishMediaInfoReq\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "platformID\x18\x02 \x01(\x05R\n" + - "platformID\x12,\n" + - "\x11platformMediaUuid\x18\x03 \x01(\tR\x11platformMediaUuid\"\x94\x01\n" + - "\x14PublishMediaInfoResp\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "platformID\x18\x02 \x01(\x05R\n" + - "platformID\x12,\n" + - "\x11platformMediaUuid\x18\x03 \x01(\tR\x11platformMediaUuid\x12\x12\n" + - "\x04info\x18\x04 \x01(\tR\x04info\"\x9e\x02\n" + - "\x14UpdateVideoScriptReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12 \n" + - "\vcreatorUuid\x18\x04 \x01(\tR\vcreatorUuid\x12 \n" + - "\vcreatorName\x18\x05 \x01(\tR\vcreatorName\x12\x1e\n" + - "\n" + - "artistUuid\x18\x06 \x01(\tR\n" + - "artistUuid\x12 \n" + - "\vartistPhone\x18\a \x01(\tR\vartistPhone\x12\x1c\n" + - "\tartistNum\x18\b \x01(\tR\tartistNum\x12\x1e\n" + - "\n" + - "artistName\x18\t \x01(\tR\n" + - "artistName\"+\n" + - "\x15UpdateVideoScriptResp\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"'\n" + - "\x11GetVideoScriptReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"\x8c\x03\n" + - "\x12GetVideoScriptResp\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\x16\n" + - "\x06status\x18\x04 \x01(\rR\x06status\x12\x1e\n" + - "\n" + - "artistUuid\x18\x05 \x01(\tR\n" + - "artistUuid\x12\x1e\n" + - "\n" + - "artistName\x18\x06 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\a \x01(\tR\vartistPhone\x12 \n" + - "\vcreatorUuid\x18\b \x01(\tR\vcreatorUuid\x12 \n" + - "\vcreatorName\x18\t \x01(\tR\vcreatorName\x12\x1e\n" + - "\n" + - "quoteCount\x18\n" + - " \x01(\x05R\n" + - "quoteCount\x12\x1c\n" + - "\tartistNum\x18\v \x01(\tR\tartistNum\x12\x16\n" + - "\x06remark\x18\f \x01(\tR\x06remark\x12\x1e\n" + - "\n" + - "approvalID\x18\r \x01(\tR\n" + - "approvalID\"\xb5\x02\n" + - "\x13ListVideoScriptsReq\x12\x14\n" + - "\x05title\x18\x01 \x01(\tR\x05title\x12\x16\n" + - "\x06status\x18\x02 \x01(\rR\x06status\x12&\n" + - "\x0eartistKeywords\x18\x03 \x01(\tR\x0eartistKeywords\x12(\n" + - "\x0fcreatorKeywords\x18\x04 \x01(\tR\x0fcreatorKeywords\x12(\n" + - "\x0fcreateStartDate\x18\x05 \x01(\tR\x0fcreateStartDate\x12$\n" + - "\rcreateEndDate\x18\x06 \x01(\tR\rcreateEndDate\x12\x12\n" + - "\x04page\x18\a \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\b \x01(\x05R\bpageSize\x12\x1e\n" + - "\n" + - "artistUuid\x18\t \x01(\tR\n" + - "artistUuid\"\xa5\x03\n" + - "\x0fVideoScriptInfo\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\x1e\n" + - "\n" + - "artistUuid\x18\x04 \x01(\tR\n" + - "artistUuid\x12\x1e\n" + - "\n" + - "artistName\x18\x05 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x06 \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "quoteCount\x18\a \x01(\x05R\n" + - "quoteCount\x12 \n" + - "\vcreatorUuid\x18\b \x01(\tR\vcreatorUuid\x12 \n" + - "\vcreatorName\x18\t \x01(\tR\vcreatorName\x12\x16\n" + - "\x06status\x18\n" + - " \x01(\rR\x06status\x12 \n" + - "\vcreatedDate\x18\v \x01(\tR\vcreatedDate\x12\x1c\n" + - "\tartistNum\x18\f \x01(\tR\tartistNum\x12\x16\n" + - "\x06remark\x18\r \x01(\tR\x06remark\x12\x18\n" + - "\asuccess\x18\x0e \x01(\bR\asuccess\"W\n" + - "\x14ListVideoScriptsResp\x12)\n" + - "\x04data\x18\x01 \x03(\v2\x15.Cast.VideoScriptInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"*\n" + - "\x14DeleteVideoScriptReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"F\n" + - "\x19UpdateVideoScriptBatchReq\x12)\n" + - "\x04data\x18\x01 \x03(\v2\x15.Cast.VideoScriptInfoR\x04data\"\x89\x01\n" + - "\x1aUpdateVideoScriptBatchResp\x12)\n" + - "\x04data\x18\x01 \x03(\v2\x15.Cast.VideoScriptInfoR\x04data\x12\"\n" + - "\fsuccessCount\x18\x02 \x01(\x05R\fsuccessCount\x12\x1c\n" + - "\tfailCount\x18\x03 \x01(\x05R\tfailCount\"\xa7\x01\n" + - "\x15UpdateScriptStatusReq\x124\n" + - "\n" + - "workAction\x18\x01 \x01(\x0e2\x14.Cast.WorkActionENUMR\n" + - "workAction\x12\x12\n" + - "\x04uuid\x18\x02 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "approvalID\x18\x03 \x01(\tR\n" + - "approvalID\x12$\n" + - "\rapprovalReply\x18\x04 \x01(\tR\rapprovalReply\"V\n" + - "\fSetLayoutReq\x12\x16\n" + - "\x06userID\x18\x01 \x01(\tR\x06userID\x12\x12\n" + - "\x04data\x18\x02 \x01(\tR\x04data\x12\x1a\n" + - "\bformName\x18\x03 \x01(\tR\bformName\"B\n" + - "\fGetLayoutReq\x12\x16\n" + - "\x06userID\x18\x01 \x01(\tR\x06userID\x12\x1a\n" + - "\bformName\x18\x02 \x01(\tR\bformName\"?\n" + - "\rGetLayoutResp\x12\x12\n" + - "\x04data\x18\x01 \x01(\tR\x04data\x12\x1a\n" + - "\bformName\x18\x03 \x01(\tR\bformName\"y\n" + - "\x0fUpdatePromptReq\x12\x1e\n" + - "\n" + - "promptUuid\x18\x01 \x01(\tR\n" + - "promptUuid\x12\x16\n" + - "\x06prompt\x18\x02 \x01(\tR\x06prompt\x12.\n" + - "\bcategory\x18\x03 \x01(\x0e2\x12.Cast.CategoryENUMR\bcategory\"1\n" + - "\x0fDeletePromptReq\x12\x1e\n" + - "\n" + - "promptUuid\x18\x01 \x01(\tR\n" + - "promptUuid\".\n" + - "\fGetPromptReq\x12\x1e\n" + - "\n" + - "promptUuid\x18\x01 \x01(\tR\n" + - "promptUuid\"\x93\x01\n" + - "\rGetPromptResp\x12\x1e\n" + - "\n" + - "promptUuid\x18\x01 \x01(\tR\n" + - "promptUuid\x12\x16\n" + - "\x06prompt\x18\x02 \x01(\tR\x06prompt\x12.\n" + - "\bcategory\x18\x03 \x01(\x0e2\x12.Cast.CategoryENUMR\bcategory\x12\x1a\n" + - "\buseCount\x18\x04 \x01(\rR\buseCount\"\x9c\x01\n" + - "\x0eListPromptsReq\x12\x16\n" + - "\x06prompt\x18\x01 \x01(\tR\x06prompt\x12.\n" + - "\bcategory\x18\x02 \x01(\x0e2\x12.Cast.CategoryENUMR\bcategory\x12\x12\n" + - "\x04page\x18\x03 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x04 \x01(\x05R\bpageSize\x12\x12\n" + - "\x04rand\x18\x05 \x01(\bR\x04rand\"\xfc\x01\n" + - "\n" + - "PromptInfo\x12\x1e\n" + - "\n" + - "promptUuid\x18\x01 \x01(\tR\n" + - "promptUuid\x12\x16\n" + - "\x06prompt\x18\x02 \x01(\tR\x06prompt\x12.\n" + - "\bcategory\x18\x03 \x01(\x0e2\x12.Cast.CategoryENUMR\bcategory\x12\x16\n" + - "\x06remark\x18\x04 \x01(\tR\x06remark\x12\x18\n" + - "\asuccess\x18\x05 \x01(\bR\asuccess\x12\x1a\n" + - "\buseCount\x18\x06 \x01(\rR\buseCount\x12\x16\n" + - "\x06lineNo\x18\a \x01(\rR\x06lineNo\x12 \n" + - "\vcreatedDate\x18\b \x01(\tR\vcreatedDate\"M\n" + - "\x0fListPromptsResp\x12$\n" + - "\x04data\x18\x01 \x03(\v2\x10.Cast.PromptInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"<\n" + - "\x14UpdatePromptBatchReq\x12$\n" + - "\x04data\x18\x01 \x03(\v2\x10.Cast.PromptInfoR\x04data\"\x7f\n" + - "\x15UpdatePromptBatchResp\x12$\n" + - "\x04data\x18\x01 \x03(\v2\x10.Cast.PromptInfoR\x04data\x12\"\n" + - "\fsuccessCount\x18\x02 \x01(\x05R\fsuccessCount\x12\x1c\n" + - "\tfailCount\x18\x03 \x01(\x05R\tfailCount\"z\n" + - "\n" + - "ArtistInfo\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\x14\n" + - "\x05refID\x18\x02 \x01(\tR\x05refID\x12\x1e\n" + - "\n" + - "profileKey\x18\x03 \x01(\tR\n" + - "profileKey\x12\x16\n" + - "\x06subNum\x18\x04 \x01(\tR\x06subNum\"W\n" + - "\x0fUpdateArtistReq\x120\n" + - "\n" + - "artistInfo\x18\x01 \x01(\v2\x10.Cast.ArtistInfoR\n" + - "artistInfo\x12\x12\n" + - "\x04Uuid\x18\x02 \x01(\tR\x04Uuid\"2\n" + - "\x10UpdateArtistResp\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\".\n" + - "\fGetArtistReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\"U\n" + - "\rGetArtistResp\x120\n" + - "\n" + - "artistInfo\x18\x01 \x01(\v2\x10.Cast.ArtistInfoR\n" + - "artistInfo\x12\x12\n" + - "\x04Uuid\x18\x02 \x01(\tR\x04Uuid\"\xa7\x06\n" + - "\x15CreateWorkAnalysisReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12\x1a\n" + - "\bartistID\x18\x04 \x01(\tR\bartistID\x12 \n" + - "\vartistPhone\x18\x05 \x01(\tR\vartistPhone\x12\x1a\n" + - "\banalysis\x18\x06 \x01(\tR\banalysis\x12\x14\n" + - "\x05title\x18\a \x01(\tR\x05title\x12\x16\n" + - "\x06pdfUrl\x18\b \x01(\tR\x06pdfUrl\x12,\n" + - "\x11mediaAccountCount\x18\t \x01(\x05R\x11mediaAccountCount\x12&\n" + - "\x0eworkVideoCount\x18\n" + - " \x01(\x05R\x0eworkVideoCount\x12&\n" + - "\x0eworkImageCount\x18\v \x01(\x05R\x0eworkImageCount\x12\x14\n" + - "\x05views\x18\f \x01(\x05R\x05views\x12\x14\n" + - "\x05likes\x18\r \x01(\x05R\x05likes\x12\x1a\n" + - "\bcomments\x18\x0e \x01(\x05R\bcomments\x12\x16\n" + - "\x06shares\x18\x0f \x01(\x05R\x06shares\x12\x1c\n" + - "\tfansCount\x18\x10 \x01(\x05R\tfansCount\x12\x1c\n" + - "\ttopCities\x18\x11 \x01(\x05R\ttopCities\x12$\n" + - "\rmostActiveDay\x18\x12 \x01(\x05R\rmostActiveDay\x12\"\n" + - "\fbestPostTime\x18\x13 \x01(\x05R\fbestPostTime\x12&\n" + - "\x0eperiodTypeFans\x18\x15 \x01(\rR\x0eperiodTypeFans\x12(\n" + - "\x0fperiodTypeViews\x18\x16 \x01(\rR\x0fperiodTypeViews\x12(\n" + - "\x0fperiodTypeLikes\x18\x17 \x01(\rR\x0fperiodTypeLikes\x12.\n" + - "\x12periodTypeComments\x18\x18 \x01(\rR\x12periodTypeComments\x12*\n" + - "\x10periodTypeShares\x18\x19 \x01(\rR\x10periodTypeShares\",\n" + - "\x16CreateWorkAnalysisResp\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"\xd1\x05\n" + - "\x15UpdateWorkAnalysisReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1a\n" + - "\banalysis\x18\x02 \x01(\tR\banalysis\x12\x14\n" + - "\x05title\x18\x03 \x01(\tR\x05title\x12\x16\n" + - "\x06pdfUrl\x18\x04 \x01(\tR\x06pdfUrl\x12,\n" + - "\x11mediaAccountCount\x18\x05 \x01(\x05R\x11mediaAccountCount\x12&\n" + - "\x0eworkVideoCount\x18\x06 \x01(\x05R\x0eworkVideoCount\x12&\n" + - "\x0eworkImageCount\x18\a \x01(\x05R\x0eworkImageCount\x12\x14\n" + - "\x05views\x18\b \x01(\x05R\x05views\x12\x14\n" + - "\x05likes\x18\t \x01(\x05R\x05likes\x12\x1a\n" + - "\bcomments\x18\n" + - " \x01(\x05R\bcomments\x12\x16\n" + - "\x06shares\x18\v \x01(\x05R\x06shares\x12\x1c\n" + - "\tfansCount\x18\f \x01(\x05R\tfansCount\x12\x1c\n" + - "\ttopCities\x18\r \x01(\x05R\ttopCities\x12$\n" + - "\rmostActiveDay\x18\x0e \x01(\x05R\rmostActiveDay\x12\"\n" + - "\fbestPostTime\x18\x0f \x01(\x05R\fbestPostTime\x12\x1e\n" + - "\n" + - "artistUUID\x18\x10 \x01(\tR\n" + - "artistUUID\x12&\n" + - "\x0eperiodTypeFans\x18\x11 \x01(\rR\x0eperiodTypeFans\x12(\n" + - "\x0fperiodTypeViews\x18\x12 \x01(\rR\x0fperiodTypeViews\x12(\n" + - "\x0fperiodTypeLikes\x18\x13 \x01(\rR\x0fperiodTypeLikes\x12.\n" + - "\x12periodTypeComments\x18\x14 \x01(\rR\x12periodTypeComments\x12*\n" + - "\x10periodTypeShares\x18\x15 \x01(\rR\x10periodTypeShares\"\x95\x02\n" + - "\x1bUpdateWorkAnalysisStatusReq\x124\n" + - "\n" + - "workAction\x18\x01 \x01(\x0e2\x14.Cast.WorkActionENUMR\n" + - "workAction\x12\x12\n" + - "\x04uuid\x18\x02 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "approvalID\x18\x03 \x01(\tR\n" + - "approvalID\x12$\n" + - "\rapprovalReply\x18\x04 \x01(\tR\rapprovalReply\x12$\n" + - "\rconfirmRemark\x18\x05 \x01(\tR\rconfirmRemark\x12$\n" + - "\rconfirmStatus\x18\x06 \x01(\rR\rconfirmStatus\x12\x1a\n" + - "\bcostType\x18\a \x01(\rR\bcostType\"\xc9\x02\n" + - "\x13WorkAnalysisLogInfo\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x1e\n" + - "\n" + - "updateTime\x18\x03 \x01(\tR\n" + - "updateTime\x12.\n" + - "\x12workAnalysisStatus\x18\x04 \x01(\rR\x12workAnalysisStatus\x12\x1e\n" + - "\n" + - "artistName\x18\x05 \x01(\tR\n" + - "artistName\x12\x1e\n" + - "\n" + - "artistUuid\x18\x06 \x01(\tR\n" + - "artistUuid\x12,\n" + - "\x11analysisExtraData\x18\a \x01(\tR\x11analysisExtraData\x12\"\n" + - "\foperatorName\x18\b \x01(\tR\foperatorName\x12\x1e\n" + - "\n" + - "operatorID\x18\t \x01(\tR\n" + - "operatorID\"\xfe\x01\n" + - "\x16WorkAnalysisFansSeries\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1c\n" + - "\tfansCount\x18\x02 \x01(\x03R\tfansCount\x12\x1e\n" + - "\n" + - "periodType\x18\x03 \x01(\rR\n" + - "periodType\x12\x1c\n" + - "\tstartDate\x18\x04 \x01(\x05R\tstartDate\x12\x18\n" + - "\aendDate\x18\x05 \x01(\x05R\aendDate\x12\x1e\n" + - "\n" + - "detailJSON\x18\x06 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\a \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\b \x01(\x05R\tupdatedAt\"\x81\x02\n" + - "\x17WorkAnalysisViewsSeries\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "viewsCount\x18\x02 \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "periodType\x18\x03 \x01(\rR\n" + - "periodType\x12\x1c\n" + - "\tstartDate\x18\x04 \x01(\x05R\tstartDate\x12\x18\n" + - "\aendDate\x18\x05 \x01(\x05R\aendDate\x12\x1e\n" + - "\n" + - "detailJSON\x18\x06 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\a \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\b \x01(\x05R\tupdatedAt\"\x81\x02\n" + - "\x17WorkAnalysisLikesSeries\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "likesCount\x18\x02 \x01(\x03R\n" + - "likesCount\x12\x1e\n" + - "\n" + - "periodType\x18\x03 \x01(\rR\n" + - "periodType\x12\x1c\n" + - "\tstartDate\x18\x04 \x01(\x05R\tstartDate\x12\x18\n" + - "\aendDate\x18\x05 \x01(\x05R\aendDate\x12\x1e\n" + - "\n" + - "detailJSON\x18\x06 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\a \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\b \x01(\x05R\tupdatedAt\"\x8a\x02\n" + - "\x1aWorkAnalysisCommentsSeries\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12$\n" + - "\rcommentsCount\x18\x02 \x01(\x03R\rcommentsCount\x12\x1e\n" + - "\n" + - "periodType\x18\x03 \x01(\rR\n" + - "periodType\x12\x1c\n" + - "\tstartDate\x18\x04 \x01(\x05R\tstartDate\x12\x18\n" + - "\aendDate\x18\x05 \x01(\x05R\aendDate\x12\x1e\n" + - "\n" + - "detailJSON\x18\x06 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\a \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\b \x01(\x05R\tupdatedAt\"\x84\x02\n" + - "\x18WorkAnalysisSharesSeries\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12 \n" + - "\vsharesCount\x18\x02 \x01(\x03R\vsharesCount\x12\x1e\n" + - "\n" + - "periodType\x18\x03 \x01(\rR\n" + - "periodType\x12\x1c\n" + - "\tstartDate\x18\x04 \x01(\x05R\tstartDate\x12\x18\n" + - "\aendDate\x18\x05 \x01(\x05R\aendDate\x12\x1e\n" + - "\n" + - "detailJSON\x18\x06 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\a \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\b \x01(\x05R\tupdatedAt\"\x87\x01\n" + - "\x15WorkAnalysisTopCities\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "citiesJSON\x18\x02 \x01(\tR\n" + - "citiesJSON\x12\x1c\n" + - "\tcreatedAt\x18\x03 \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x04 \x01(\x05R\tupdatedAt\"\x8b\x01\n" + - "\x19WorkAnalysisMostActiveDay\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "detailJSON\x18\x02 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\x03 \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x04 \x01(\x05R\tupdatedAt\"\x8a\x01\n" + - "\x18WorkAnalysisBestPostTime\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "detailJSON\x18\x02 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\x03 \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x04 \x01(\x05R\tupdatedAt\"\xc1\x01\n" + - "\x11WorkAnalysisExtra\x12\"\n" + - "\fanalysisUuid\x18\x01 \x01(\tR\fanalysisUuid\x120\n" + - "\x13artistConfirmedTime\x18\x02 \x01(\x03R\x13artistConfirmedTime\x12\x1a\n" + - "\bcostType\x18\x03 \x01(\rR\bcostType\x12\x1c\n" + - "\tcreatedAt\x18\x04 \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x05 \x01(\x05R\tupdatedAt\".\n" + - "\x18GetWorkAnalysisDetailReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"2\n" + - "\x18GetLatestWorkAnalysisReq\x12\x16\n" + - "\x06subNum\x18\x01 \x01(\tR\x06subNum\"\xef\v\n" + - "\x13GetWorkAnalysisResp\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12\x1a\n" + - "\bartistID\x18\x04 \x01(\tR\bartistID\x12 \n" + - "\vartistPhone\x18\x05 \x01(\tR\vartistPhone\x12\x1a\n" + - "\banalysis\x18\x06 \x01(\tR\banalysis\x12\x14\n" + - "\x05title\x18\a \x01(\tR\x05title\x12\x1e\n" + - "\n" + - "operatorID\x18\b \x01(\tR\n" + - "operatorID\x12\"\n" + - "\foperatorName\x18\t \x01(\tR\foperatorName\x12.\n" + - "\x12workAnalysisStatus\x18\n" + - " \x01(\rR\x12workAnalysisStatus\x12\x16\n" + - "\x06reason\x18\v \x01(\tR\x06reason\x12 \n" + - "\vcomfirmType\x18\f \x01(\x05R\vcomfirmType\x12\x12\n" + - "\x04cost\x18\r \x01(\rR\x04cost\x12\x1e\n" + - "\n" + - "submitTime\x18\x0e \x01(\tR\n" + - "submitTime\x12*\n" + - "\x10statusUpdateTime\x18\x0f \x01(\tR\x10statusUpdateTime\x12\x1e\n" + - "\n" + - "approvalID\x18\x10 \x01(\tR\n" + - "approvalID\x12\x16\n" + - "\x06pdfUrl\x18\x11 \x01(\tR\x06pdfUrl\x12,\n" + - "\x11mediaAccountCount\x18\x12 \x01(\x05R\x11mediaAccountCount\x12&\n" + - "\x0eworkVideoCount\x18\x13 \x01(\x05R\x0eworkVideoCount\x12&\n" + - "\x0eworkImageCount\x18\x14 \x01(\x05R\x0eworkImageCount\x12\x14\n" + - "\x05views\x18\x15 \x01(\x05R\x05views\x12\x14\n" + - "\x05likes\x18\x16 \x01(\x05R\x05likes\x12\x1a\n" + - "\bcomments\x18\x17 \x01(\x05R\bcomments\x12\x16\n" + - "\x06shares\x18\x18 \x01(\x05R\x06shares\x12\x1c\n" + - "\tfansCount\x18\x19 \x01(\x05R\tfansCount\x12\x1c\n" + - "\ttopCities\x18\x1a \x01(\x05R\ttopCities\x12$\n" + - "\rmostActiveDay\x18\x1b \x01(\x05R\rmostActiveDay\x12\"\n" + - "\fbestPostTime\x18\x1c \x01(\x05R\fbestPostTime\x12\x1c\n" + - "\tcreatedAt\x18\x1d \x01(\tR\tcreatedAt\x12<\n" + - "\n" + - "fansSeries\x18\x1e \x01(\v2\x1c.Cast.WorkAnalysisFansSeriesR\n" + - "fansSeries\x12?\n" + - "\vviewsSeries\x18\x1f \x01(\v2\x1d.Cast.WorkAnalysisViewsSeriesR\vviewsSeries\x12?\n" + - "\vlikesSeries\x18 \x01(\v2\x1d.Cast.WorkAnalysisLikesSeriesR\vlikesSeries\x12H\n" + - "\x0ecommentsSeries\x18! \x01(\v2 .Cast.WorkAnalysisCommentsSeriesR\x0ecommentsSeries\x12B\n" + - "\fsharesSeries\x18\" \x01(\v2\x1e.Cast.WorkAnalysisSharesSeriesR\fsharesSeries\x12E\n" + - "\x0ftopCitiesSeries\x18# \x01(\v2\x1b.Cast.WorkAnalysisTopCitiesR\x0ftopCitiesSeries\x12Q\n" + - "\x13mostActiveDaySeries\x18$ \x01(\v2\x1f.Cast.WorkAnalysisMostActiveDayR\x13mostActiveDaySeries\x12N\n" + - "\x12bestPostTimeSeries\x18% \x01(\v2\x1e.Cast.WorkAnalysisBestPostTimeR\x12bestPostTimeSeries\x12\x1c\n" + - "\tupdatedAt\x18& \x01(\tR\tupdatedAt\"\xf1\f\n" + - "\x19GetWorkAnalysisDetailResp\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12\x1a\n" + - "\bartistID\x18\x04 \x01(\tR\bartistID\x12 \n" + - "\vartistPhone\x18\x05 \x01(\tR\vartistPhone\x12\x1a\n" + - "\banalysis\x18\x06 \x01(\tR\banalysis\x12\x14\n" + - "\x05title\x18\a \x01(\tR\x05title\x12\x1e\n" + - "\n" + - "operatorID\x18\b \x01(\tR\n" + - "operatorID\x12\"\n" + - "\foperatorName\x18\t \x01(\tR\foperatorName\x12.\n" + - "\x12workAnalysisStatus\x18\n" + - " \x01(\rR\x12workAnalysisStatus\x12\x16\n" + - "\x06reason\x18\v \x01(\tR\x06reason\x12 \n" + - "\vcomfirmType\x18\f \x01(\x05R\vcomfirmType\x12\x12\n" + - "\x04cost\x18\r \x01(\rR\x04cost\x12\x1e\n" + - "\n" + - "submitTime\x18\x0e \x01(\tR\n" + - "submitTime\x12*\n" + - "\x10statusUpdateTime\x18\x0f \x01(\tR\x10statusUpdateTime\x12\x1e\n" + - "\n" + - "approvalID\x18\x10 \x01(\tR\n" + - "approvalID\x12\x16\n" + - "\x06pdfUrl\x18\x11 \x01(\tR\x06pdfUrl\x12,\n" + - "\x11mediaAccountCount\x18\x12 \x01(\x05R\x11mediaAccountCount\x12&\n" + - "\x0eworkVideoCount\x18\x13 \x01(\x05R\x0eworkVideoCount\x12&\n" + - "\x0eworkImageCount\x18\x14 \x01(\x05R\x0eworkImageCount\x12\x14\n" + - "\x05views\x18\x15 \x01(\x05R\x05views\x12\x14\n" + - "\x05likes\x18\x16 \x01(\x05R\x05likes\x12\x1a\n" + - "\bcomments\x18\x17 \x01(\x05R\bcomments\x12\x16\n" + - "\x06shares\x18\x18 \x01(\x05R\x06shares\x12\x1c\n" + - "\tfansCount\x18\x19 \x01(\x05R\tfansCount\x12\x1c\n" + - "\ttopCities\x18\x1a \x01(\x05R\ttopCities\x12$\n" + - "\rmostActiveDay\x18\x1b \x01(\x05R\rmostActiveDay\x12\"\n" + - "\fbestPostTime\x18\x1c \x01(\x05R\fbestPostTime\x12K\n" + - "\x13WorkAnalysisLogData\x18\x1d \x03(\v2\x19.Cast.WorkAnalysisLogInfoR\x13WorkAnalysisLogData\x12<\n" + - "\n" + - "fansSeries\x18\x1e \x01(\v2\x1c.Cast.WorkAnalysisFansSeriesR\n" + - "fansSeries\x12?\n" + - "\vviewsSeries\x18\x1f \x01(\v2\x1d.Cast.WorkAnalysisViewsSeriesR\vviewsSeries\x12?\n" + - "\vlikesSeries\x18 \x01(\v2\x1d.Cast.WorkAnalysisLikesSeriesR\vlikesSeries\x12H\n" + - "\x0ecommentsSeries\x18! \x01(\v2 .Cast.WorkAnalysisCommentsSeriesR\x0ecommentsSeries\x12B\n" + - "\fsharesSeries\x18\" \x01(\v2\x1e.Cast.WorkAnalysisSharesSeriesR\fsharesSeries\x12E\n" + - "\x0ftopCitiesSeries\x18# \x01(\v2\x1b.Cast.WorkAnalysisTopCitiesR\x0ftopCitiesSeries\x12Q\n" + - "\x13mostActiveDaySeries\x18$ \x01(\v2\x1f.Cast.WorkAnalysisMostActiveDayR\x13mostActiveDaySeries\x12N\n" + - "\x12bestPostTimeSeries\x18% \x01(\v2\x1e.Cast.WorkAnalysisBestPostTimeR\x12bestPostTimeSeries\x12-\n" + - "\x05extra\x18& \x01(\v2\x17.Cast.WorkAnalysisExtraR\x05extra\x12\x1c\n" + - "\tcreatedAt\x18' \x01(\tR\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18( \x01(\tR\tupdatedAt\"\xc9\x03\n" + - "\x13ListWorkAnalysisReq\x12\x1a\n" + - "\buuidList\x18\x01 \x03(\tR\buuidList\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x1c\n" + - "\tartistVal\x18\x03 \x01(\tR\tartistVal\x12\x16\n" + - "\x06status\x18\x04 \x01(\rR\x06status\x12 \n" + - "\vcomfirmType\x18\x05 \x01(\x05R\vcomfirmType\x124\n" + - "\x15statusUpdateTimeStart\x18\x06 \x01(\tR\x15statusUpdateTimeStart\x120\n" + - "\x13statusUpdateTimeEnd\x18\a \x01(\tR\x13statusUpdateTimeEnd\x12(\n" + - "\x0fsubmitStartTime\x18\b \x01(\tR\x0fsubmitStartTime\x12$\n" + - "\rsubmitEndTime\x18\t \x01(\tR\rsubmitEndTime\x12\x12\n" + - "\x04page\x18\n" + - " \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\v \x01(\x05R\bpageSize\x12\x1e\n" + - "\n" + - "statusList\x18\f \x03(\rR\n" + - "statusList\x12\x1e\n" + - "\n" + - "artistUuid\x18\r \x01(\tR\n" + - "artistUuid\"\xe4\x03\n" + - "\x10WorkAnalysisInfo\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12\x1a\n" + - "\bartistID\x18\x04 \x01(\tR\bartistID\x12 \n" + - "\vartistPhone\x18\x05 \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "operatorID\x18\x06 \x01(\tR\n" + - "operatorID\x12\"\n" + - "\foperatorName\x18\a \x01(\tR\foperatorName\x12.\n" + - "\x12workAnalysisStatus\x18\b \x01(\rR\x12workAnalysisStatus\x12\x16\n" + - "\x06reason\x18\t \x01(\tR\x06reason\x12 \n" + - "\vcomfirmType\x18\n" + - " \x01(\x05R\vcomfirmType\x12\x1e\n" + - "\n" + - "submitTime\x18\v \x01(\tR\n" + - "submitTime\x12*\n" + - "\x10statusUpdateTime\x18\f \x01(\tR\x10statusUpdateTime\x12\x16\n" + - "\x06pdfUrl\x18\r \x01(\tR\x06pdfUrl\x12\x1e\n" + - "\n" + - "approvalID\x18\x0e \x01(\tR\n" + - "approvalID\x12\x14\n" + - "\x05title\x18\x0f \x01(\tR\x05title\"X\n" + - "\x14ListWorkAnalysisResp\x12*\n" + - "\x04data\x18\x01 \x03(\v2\x16.Cast.WorkAnalysisInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"+\n" + - "\x15DeleteWorkAnalysisReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"\xa5\x02\n" + - "\x11ArtistDataListReq\x12\x1c\n" + - "\tartistVal\x18\x01 \x01(\tR\tartistVal\x12\x1e\n" + - "\n" + - "bundleName\x18\x02 \x01(\tR\n" + - "bundleName\x12*\n" + - "\x10expiredTimeStart\x18\x03 \x01(\tR\x10expiredTimeStart\x12&\n" + - "\x0eexpiredTimeEnd\x18\x04 \x01(\tR\x0eexpiredTimeEnd\x12(\n" + - "\x0fsubmitTimeStart\x18\x05 \x01(\tR\x0fsubmitTimeStart\x12$\n" + - "\rsubmitTimeEnd\x18\x06 \x01(\tR\rsubmitTimeEnd\x12\x12\n" + - "\x04page\x18\a \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\b \x01(\x05R\bpageSize\"\xd4\x05\n" + - "\x12ArtistDataRespItem\x12\x1e\n" + - "\n" + - "artistName\x18\x01 \x01(\tR\n" + - "artistName\x12\x1e\n" + - "\n" + - "artistUuid\x18\x02 \x01(\tR\n" + - "artistUuid\x12\x16\n" + - "\x06subNum\x18\x03 \x01(\tR\x06subNum\x12 \n" + - "\vartistPhone\x18\x04 \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "bundleName\x18\x05 \x01(\tR\n" + - "bundleName\x12$\n" + - "\raccountNumber\x18\x06 \x01(\x05R\raccountNumber\x12:\n" + - "\x18accountConsumptionNumber\x18\a \x01(\x05R\x18accountConsumptionNumber\x12.\n" + - "\x12dataAnalysisNumber\x18\b \x01(\x05R\x12dataAnalysisNumber\x12D\n" + - "\x1ddataAnalysisConsumptionNumber\x18\t \x01(\x05R\x1ddataAnalysisConsumptionNumber\x12\x1e\n" + - "\n" + - "submitTime\x18\n" + - " \x01(\tR\n" + - "submitTime\x12\x1c\n" + - "\tfansCount\x18\v \x01(\x03R\tfansCount\x12\x1e\n" + - "\n" + - "viewsCount\x18\f \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\r \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\x0e \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\x0f \x01(\x03R\vsharesCount\x12$\n" + - "\rcastWorkCount\x18\x10 \x01(\x03R\rcastWorkCount\x12 \n" + - "\vexpiredTime\x18\x11 \x01(\tR\vexpiredTime\x12\x1e\n" + - "\n" + - "videoCount\x18\x12 \x01(\x03R\n" + - "videoCount\x12\x1e\n" + - "\n" + - "imageCount\x18\x13 \x01(\x03R\n" + - "imageCount\"X\n" + - "\x12ArtistDataListResp\x12,\n" + - "\x04data\x18\x01 \x03(\v2\x18.Cast.ArtistDataRespItemR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"\xac\x01\n" + - "\x10MediaDataListReq\x12\x1c\n" + - "\tartistVal\x18\x01 \x01(\tR\tartistVal\x12*\n" + - "\x10platformUserName\x18\x02 \x01(\tR\x10platformUserName\x12\x1e\n" + - "\n" + - "platformID\x18\x03 \x01(\rR\n" + - "platformID\x12\x12\n" + - "\x04page\x18\x04 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x05 \x01(\x05R\bpageSize\"\x85\x04\n" + - "\x11MediaDataListItem\x12\x1e\n" + - "\n" + - "artistName\x18\x01 \x01(\tR\n" + - "artistName\x12\x1e\n" + - "\n" + - "artistUuid\x18\x02 \x01(\tR\n" + - "artistUuid\x12\x16\n" + - "\x06subNum\x18\x03 \x01(\tR\x06subNum\x12 \n" + - "\vartistPhone\x18\x04 \x01(\tR\vartistPhone\x12*\n" + - "\x10platformUserName\x18\x05 \x01(\tR\x10platformUserName\x12\x1e\n" + - "\n" + - "platformID\x18\x06 \x01(\rR\n" + - "platformID\x12\x1e\n" + - "\n" + - "submitTime\x18\a \x01(\tR\n" + - "submitTime\x12\x1c\n" + - "\tfansCount\x18\b \x01(\x03R\tfansCount\x12\x1e\n" + - "\n" + - "viewsCount\x18\t \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\n" + - " \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\v \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\f \x01(\x03R\vsharesCount\x12$\n" + - "\rcastWorkCount\x18\r \x01(\x03R\rcastWorkCount\x12\x1e\n" + - "\n" + - "videoCount\x18\x0e \x01(\x03R\n" + - "videoCount\x12\x1e\n" + - "\n" + - "imageCount\x18\x0f \x01(\x03R\n" + - "imageCount\"V\n" + - "\x11MediaDataListResp\x12+\n" + - "\x04data\x18\x01 \x03(\v2\x17.Cast.MediaDataListItemR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"%\n" + - "\x0fDataOverviewReq\x12\x12\n" + - "\x04date\x18\x01 \x01(\tR\x04date\"\xc0\x06\n" + - "\x10DataOverviewResp\x12\"\n" + - "\faccountCount\x18\x01 \x01(\x03R\faccountCount\x12,\n" + - "\x11todayAccountCount\x18\x02 \x01(\x03R\x11todayAccountCount\x12\x1c\n" + - "\tfansCount\x18\x03 \x01(\x03R\tfansCount\x12&\n" + - "\x0etodayFansCount\x18\x04 \x01(\x03R\x0etodayFansCount\x12\x1e\n" + - "\n" + - "viewsCount\x18\x05 \x01(\x03R\n" + - "viewsCount\x12(\n" + - "\x0ftodayViewsCount\x18\x06 \x01(\x03R\x0ftodayViewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\a \x01(\x03R\n" + - "likesCount\x12(\n" + - "\x0ftodayLikesCount\x18\b \x01(\x03R\x0ftodayLikesCount\x12$\n" + - "\rcommentsCount\x18\t \x01(\x03R\rcommentsCount\x12.\n" + - "\x12todayCommentsCount\x18\n" + - " \x01(\x03R\x12todayCommentsCount\x12 \n" + - "\vsharesCount\x18\v \x01(\x03R\vsharesCount\x12*\n" + - "\x10todaySharesCount\x18\f \x01(\x03R\x10todaySharesCount\x12\x1e\n" + - "\n" + - "imageCount\x18\r \x01(\x03R\n" + - "imageCount\x12(\n" + - "\x0ftodayImageCount\x18\x0e \x01(\x03R\x0ftodayImageCount\x12\x1e\n" + - "\n" + - "videoCount\x18\x0f \x01(\x03R\n" + - "videoCount\x12(\n" + - "\x0ftodayVideoCount\x18\x10 \x01(\x03R\x0ftodayVideoCount\x12*\n" + - "\x10confirmDataCount\x18\x11 \x01(\x03R\x10confirmDataCount\x124\n" + - "\x15todayConfirmDataCount\x18\x12 \x01(\x03R\x15todayConfirmDataCount\x126\n" + - "\x16toBeConfirmedDataCount\x18\x13 \x01(\x03R\x16toBeConfirmedDataCount\x12.\n" + - "\x12approvingDataCount\x18\x14 \x01(\x03R\x12approvingDataCount\"\x90\x02\n" + - "\x16ArtistMetricsSeriesReq\x12\x1e\n" + - "\n" + - "artistUUID\x18\x01 \x01(\tR\n" + - "artistUUID\x12&\n" + - "\x0eperiodTypeFans\x18\x02 \x01(\rR\x0eperiodTypeFans\x12(\n" + - "\x0fperiodTypeViews\x18\x03 \x01(\rR\x0fperiodTypeViews\x12(\n" + - "\x0fperiodTypeLikes\x18\x04 \x01(\rR\x0fperiodTypeLikes\x12.\n" + - "\x12periodTypeComments\x18\x05 \x01(\rR\x12periodTypeComments\x12*\n" + - "\x10periodTypeShares\x18\x06 \x01(\rR\x10periodTypeShares\"\xf2\x03\n" + - "\x17ArtistMetricsSeriesResp\x12<\n" + - "\n" + - "fansSeries\x18\x01 \x01(\v2\x1c.Cast.WorkAnalysisFansSeriesR\n" + - "fansSeries\x12?\n" + - "\vviewsSeries\x18\x02 \x01(\v2\x1d.Cast.WorkAnalysisViewsSeriesR\vviewsSeries\x12?\n" + - "\vlikesSeries\x18\x03 \x01(\v2\x1d.Cast.WorkAnalysisLikesSeriesR\vlikesSeries\x12H\n" + - "\x0ecommentsSeries\x18\x04 \x01(\v2 .Cast.WorkAnalysisCommentsSeriesR\x0ecommentsSeries\x12B\n" + - "\fsharesSeries\x18\x05 \x01(\v2\x1e.Cast.WorkAnalysisSharesSeriesR\fsharesSeries\x12B\n" + - "\fbestPostTime\x18\x06 \x01(\v2\x1e.Cast.WorkAnalysisBestPostTimeR\fbestPostTime\x12E\n" + - "\rmostActiveDay\x18\a \x01(\v2\x1f.Cast.WorkAnalysisMostActiveDayR\rmostActiveDay\"q\n" + - "\x1bArtistMetricsDailyWindowReq\x12\x1e\n" + - "\n" + - "artistUUID\x18\x01 \x01(\tR\n" + - "artistUUID\x12\x1e\n" + - "\n" + - "platformID\x18\x02 \x01(\rR\n" + - "platformID\x12\x12\n" + - "\x04date\x18\x03 \x01(\x05R\x04date\"7\n" + - "\vSimplePoint\x12\x12\n" + - "\x04date\x18\x01 \x01(\x05R\x04date\x12\x14\n" + - "\x05value\x18\x02 \x01(\x03R\x05value\"G\n" + - "\x11BestPostTimePoint\x12\x1c\n" + - "\ttimePoint\x18\x01 \x01(\tR\ttimePoint\x12\x14\n" + - "\x05value\x18\x02 \x01(\x05R\x05value\"<\n" + - "\x12MostActiveDayPoint\x12\x10\n" + - "\x03day\x18\x01 \x01(\x05R\x03day\x12\x14\n" + - "\x05value\x18\x02 \x01(\x05R\x05value\"\x94\x04\n" + - "\x1cArtistMetricsDailyWindowResp\x12\x1c\n" + - "\tfansCount\x18\x01 \x01(\x03R\tfansCount\x12\x1e\n" + - "\n" + - "viewsCount\x18\x02 \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\x03 \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\x04 \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\x05 \x01(\x03R\vsharesCount\x12%\n" + - "\x04fans\x18\x06 \x03(\v2\x11.Cast.SimplePointR\x04fans\x12'\n" + - "\x05views\x18\a \x03(\v2\x11.Cast.SimplePointR\x05views\x12'\n" + - "\x05likes\x18\b \x03(\v2\x11.Cast.SimplePointR\x05likes\x12-\n" + - "\bcomments\x18\t \x03(\v2\x11.Cast.SimplePointR\bcomments\x12)\n" + - "\x06shares\x18\n" + - " \x03(\v2\x11.Cast.SimplePointR\x06shares\x12;\n" + - "\fbestPostTime\x18\v \x03(\v2\x17.Cast.BestPostTimePointR\fbestPostTime\x12>\n" + - "\rmostActiveDay\x18\f \x03(\v2\x18.Cast.MostActiveDayPointR\rmostActiveDay\"f\n" + - "\x14TobeConfirmedListReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\x12\n" + - "\x04page\x18\x02 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x03 \x01(\x05R\bpageSize\"\xff\x03\n" + - "\x11TobeConfirmedItem\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\"\n" + - "\fworkCategory\x18\x04 \x01(\x05R\fworkCategory\x12\x1e\n" + - "\n" + - "updateTime\x18\x05 \x01(\tR\n" + - "updateTime\x12\x1e\n" + - "\n" + - "workStatus\x18\x06 \x01(\x05R\n" + - "workStatus\x12 \n" + - "\vplatformIds\x18\a \x01(\tR\vplatformIds\x12\x1e\n" + - "\n" + - "artistName\x18\b \x01(\tR\n" + - "artistName\x12\x1e\n" + - "\n" + - "artistUuid\x18\t \x01(\tR\n" + - "artistUuid\x12(\n" + - "\x0fmediaAccUserIds\x18\n" + - " \x01(\tR\x0fmediaAccUserIds\x12\x1e\n" + - "\n" + - "mediaNames\x18\v \x01(\tR\n" + - "mediaNames\x12 \n" + - "\vconfirmedAt\x18\f \x01(\x03R\vconfirmedAt\x12\x1a\n" + - "\bitemType\x18\r \x01(\x05R\bitemType\x12\x1c\n" + - "\tcreatedAt\x18\x0e \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x0f \x01(\x05R\tupdatedAt\x12\x1c\n" + - "\tdeletedAt\x18\x10 \x01(\x04R\tdeletedAt\"Z\n" + - "\x15TobeConfirmedListResp\x12+\n" + - "\x04data\x18\x01 \x03(\v2\x17.Cast.TobeConfirmedItemR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"U\n" + - "\x1fUpdateWorkAnalysisApprovalIDReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "approvalID\x18\x02 \x01(\tR\n" + - "approvalID\"\xed\x03\n" + - "\x15MediaMetricsDailyItem\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x02 \x01(\tR\n" + - "artistUuid\x12&\n" + - "\x0emediaAccUserID\x18\x03 \x01(\tR\x0emediaAccUserID\x12\x1c\n" + - "\tmediaName\x18\x04 \x01(\tR\tmediaName\x12\x1e\n" + - "\n" + - "artistName\x18\x05 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x06 \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "platformID\x18\a \x01(\rR\n" + - "platformID\x12\x12\n" + - "\x04date\x18\b \x01(\x05R\x04date\x12\x1c\n" + - "\tfansCount\x18\t \x01(\x03R\tfansCount\x12\x1e\n" + - "\n" + - "viewsCount\x18\n" + - " \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\v \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\f \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\r \x01(\x03R\vsharesCount\x12\x1e\n" + - "\n" + - "videoCount\x18\x0e \x01(\x03R\n" + - "videoCount\x12\x1e\n" + - "\n" + - "imageCount\x18\x0f \x01(\x03R\n" + - "imageCount\"R\n" + - "\x1fUpsertMediaMetricsDailyBatchReq\x12/\n" + - "\x04data\x18\x01 \x03(\v2\x1b.Cast.MediaMetricsDailyItemR\x04data\"<\n" + - " UpsertMediaMetricsDailyBatchResp\x12\x18\n" + - "\asuccess\x18\x01 \x01(\bR\asuccess\"\xaa\x03\n" + - "\x14WorkMetricsDailyItem\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1a\n" + - "\bworkUuid\x18\x02 \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x03 \x01(\tR\n" + - "artistUuid\x12&\n" + - "\x0emediaAccUserID\x18\x04 \x01(\tR\x0emediaAccUserID\x12\x1c\n" + - "\tmediaName\x18\x05 \x01(\tR\tmediaName\x12\x1e\n" + - "\n" + - "artistName\x18\x06 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\a \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "platformID\x18\b \x01(\rR\n" + - "platformID\x12\x12\n" + - "\x04date\x18\t \x01(\x05R\x04date\x12\x1e\n" + - "\n" + - "viewsCount\x18\n" + - " \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\v \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\f \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\r \x01(\x03R\vsharesCount\"P\n" + - "\x1eUpsertWorkMetricsDailyBatchReq\x12.\n" + - "\x04data\x18\x01 \x03(\v2\x1a.Cast.WorkMetricsDailyItemR\x04data\";\n" + - "\x1fUpsertWorkMetricsDailyBatchResp\x12\x18\n" + - "\asuccess\x18\x01 \x01(\bR\asuccess\"\x9a\x01\n" + - "\x18GetArtistAyrShareInfoReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x16\n" + - "\x06status\x18\x03 \x01(\x05R\x06status\x12\x12\n" + - "\x04page\x18\x04 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x05 \x01(\x05R\bpageSize\"\x9a\x02\n" + - "\x12ArtistAyrShareInfo\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x02 \x01(\tR\n" + - "artistUuid\x12\x16\n" + - "\x06subNum\x18\x03 \x01(\tR\x06subNum\x12\x14\n" + - "\x05refId\x18\x04 \x01(\tR\x05refId\x12\x1e\n" + - "\n" + - "profileKey\x18\x05 \x01(\tR\n" + - "profileKey\x12.\n" + - "\x12ayrShareCreateTime\x18\x06 \x01(\tR\x12ayrShareCreateTime\x12\x16\n" + - "\x06status\x18\a \x01(\x05R\x06status\x12\x1c\n" + - "\tcreatedAt\x18\b \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\t \x01(\x05R\tupdatedAt\"_\n" + - "\x19GetArtistAyrShareInfoResp\x12,\n" + - "\x04data\x18\x01 \x03(\v2\x18.Cast.ArtistAyrShareInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"\x9b\x01\n" + - "\x17ListWorkPlatformInfoReq\x12 \n" + - "\vplatformIDs\x18\x01 \x03(\rR\vplatformIDs\x12.\n" + - "\x12publishMediaStatus\x18\x02 \x01(\x05R\x12publishMediaStatus\x12\x12\n" + - "\x04page\x18\x03 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x04 \x01(\x05R\bpageSize\"\xd2\x02\n" + - "\x10WorkPlatformInfo\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1a\n" + - "\bworkUuid\x18\x02 \x01(\tR\bworkUuid\x12 \n" + - "\vmediaUserID\x18\x03 \x01(\tR\vmediaUserID\x12\x1e\n" + - "\n" + - "platformID\x18\x04 \x01(\rR\n" + - "platformID\x12 \n" + - "\vpublishResp\x18\x05 \x01(\tR\vpublishResp\x12&\n" + - "\x0epublishMediaID\x18\x06 \x01(\tR\x0epublishMediaID\x12.\n" + - "\x12publishMediaStatus\x18\a \x01(\x05R\x12publishMediaStatus\x12\x16\n" + - "\x06remark\x18\b \x01(\tR\x06remark\x12\x1c\n" + - "\tcreatedAt\x18\t \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\n" + - " \x01(\x05R\tupdatedAt\"\\\n" + - "\x18ListWorkPlatformInfoResp\x12*\n" + - "\x04data\x18\x01 \x03(\v2\x16.Cast.WorkPlatformInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count*G\n" + - "\x0ePlatformIDENUM\x12\v\n" + - "\aUNKNOWN\x10\x00\x12\n" + - "\n" + - "\x06TIKTOK\x10\x01\x12\v\n" + - "\aYOUTUBE\x10\x02\x12\a\n" + - "\x03INS\x10\x03\x12\x06\n" + - "\x02DM\x10\x04*9\n" + - "\x0eAuthStatusENUM\x12\x0f\n" + - "\vUNKNOWNAuth\x10\x00\x12\n" + - "\n" + - "\x06AuthOk\x10\x01\x12\n" + - "\n" + - "\x06AuthNo\x10\x02*\x81\x01\n" + - "\x0eWorkActionENUM\x12\r\n" + - "\tNO_ACTION\x10\x00\x12\v\n" + - "\aCONFIRM\x10\x01\x12\f\n" + - "\bAPPROVAL\x10\x02\x12\x11\n" + - "\rAPPROVAL_PASS\x10\x03\x12\x13\n" + - "\x0fAPPROVAL_REJECT\x10\x04\x12\x13\n" + - "\x0fAPPROVAL_DELETE\x10\x05\x12\b\n" + - "\x04READ\x10\x06*V\n" + - "\x0fAutoPublishENUM\x12\x16\n" + - "\x12AutoPublish_UNKONW\x10\x00\x12\x14\n" + - "\x10AutoPublish_TRUE\x10\x01\x12\x15\n" + - "\x11AutoPublish_FALSE\x10\x02*\xa6\x01\n" + - "\x11PublishStatusENUM\x12\x19\n" + - "\x15PublishMediaStatus_NO\x10\x00\x12\x1a\n" + - "\x16PublishMediaStatus_ING\x10\x01\x12\x1b\n" + - "\x17PublishMediaStatus_DONE\x10\x02\x12\x1b\n" + - "\x17PublishMediaStatus_FAIL\x10\x03\x12 \n" + - "\x1cPublishMediaStatus_EXCEPTION\x10\x04*Y\n" + - "\fCategoryENUM\x12\x14\n" + - "\x10UNKNOWN_CATEGORY\x10\x00\x12\t\n" + - "\x05TITLE\x10\x01\x12\v\n" + - "\aCONTENT\x10\x02\x12\t\n" + - "\x05IMAGE\x10\x03\x12\x10\n" + - "\fLONG_CONTENT\x10\x042\xe7\"\n" + - "\x04Cast\x12B\n" + - "\rMediaUserList\x12\x16.Cast.MediaUserListReq\x1a\x17.Cast.MediaUserListResp\"\x00\x12Q\n" + - "\x12UpdateMediaAccount\x12\x1b.Cast.UpdateMediaAccountReq\x1a\x1c.Cast.UpdateMediaAccountResp\"\x00\x12B\n" + - "\rUnbindManager\x12\x16.Cast.UnbindManagerReq\x1a\x17.Cast.UnbindManagerResp\"\x00\x12=\n" + - "\vBindManager\x12\x14.Cast.BindManagerReq\x1a\x16.google.protobuf.Empty\"\x00\x12H\n" + - "\x0fUpdateWorkImage\x12\x18.Cast.UpdateWorkImageReq\x1a\x19.Cast.UpdateWorkImageResp\"\x00\x12H\n" + - "\x0fUpdateWorkVideo\x12\x18.Cast.UpdateWorkVideoReq\x1a\x19.Cast.UpdateWorkVideoResp\"\x00\x126\n" + - "\tMediaInfo\x12\x12.Cast.MediaInfoReq\x1a\x13.Cast.MediaInfoResp\"\x00\x123\n" + - "\bWorkList\x12\x11.Cast.WorkListReq\x1a\x12.Cast.WorkListResp\"\x00\x129\n" + - "\n" + - "WorkDetail\x12\x13.Cast.WorkDetailReq\x1a\x14.Cast.WorkDetailResp\"\x00\x12?\n" + - "\fUpdateStatus\x12\x15.Cast.UpdateStatusReq\x1a\x16.google.protobuf.Empty\"\x00\x12B\n" + - "\rMediaAccounts\x12\x16.Cast.MediaAccountsReq\x1a\x17.Cast.MediaAccountsResp\"\x00\x129\n" + - "\n" + - "MediaWorks\x12\x13.Cast.MediaWorksReq\x1a\x14.Cast.MediaWorksResp\"\x00\x120\n" + - "\aPublish\x12\x10.Cast.PublishReq\x1a\x11.Cast.PublishResp\"\x00\x126\n" + - "\tRePublish\x12\x12.Cast.RePublishReq\x1a\x13.Cast.RePublishResp\"\x00\x125\n" + - "\aDelWork\x12\x10.Cast.DelWorkReq\x1a\x16.google.protobuf.Empty\"\x00\x123\n" + - "\bWorkInfo\x12\x11.Cast.WorkInfoReq\x1a\x12.Cast.WorkInfoResp\"\x00\x129\n" + - "\n" + - "ArtistInfo\x12\x13.Cast.ArtistInfoReq\x1a\x14.Cast.ArtistInfoResp\"\x00\x12H\n" + - "\x0fImportWorkBatch\x12\x18.Cast.ImportWorkBatchReq\x1a\x19.Cast.ImportWorkBatchResp\"\x00\x12]\n" + - "\x16UpdateWorkPlatformInfo\x12\x1f.Cast.UpdateWorkPlatformInfoReq\x1a .Cast.UpdateWorkPlatformInfoResp\"\x00\x12O\n" + - "\x14UpdateWorkPublishLog\x12\x1d.Cast.UpdateWorkPublishLogReq\x1a\x16.google.protobuf.Empty\"\x00\x12H\n" + - "\x0fRefreshWorkList\x12\x18.Cast.RefreshWorkListReq\x1a\x19.Cast.RefreshWorkListResp\"\x00\x12?\n" + - "\fOAuthAccount\x12\x15.Cast.OAuthAccountReq\x1a\x16.Cast.OAuthAccountResp\"\x00\x12E\n" + - "\x0eOAuthAccountV2\x12\x17.Cast.OAuthAccountV2Req\x1a\x18.Cast.OAuthAccountV2Resp\"\x00\x12K\n" + - "\x10OAuthCodeToToken\x12\x19.Cast.OAuthCodeToTokenReq\x1a\x1a.Cast.OAuthCodeToTokenResp\"\x00\x12=\n" + - "\vUpdateOAuth\x12\x14.Cast.UpdateOAuthReq\x1a\x16.google.protobuf.Empty\"\x00\x12?\n" + - "\fRefreshToken\x12\x15.Cast.RefreshTokenReq\x1a\x16.Cast.RefreshTokenResp\"\x00\x12K\n" + - "\x10PublishMediaInfo\x12\x19.Cast.PublishMediaInfoReq\x1a\x1a.Cast.PublishMediaInfoResp\"\x00\x128\n" + - "\x04Test\x12\x16.google.protobuf.Empty\x1a\x16.google.protobuf.Empty\"\x00\x12N\n" + - "\x11UpdateVideoScript\x12\x1a.Cast.UpdateVideoScriptReq\x1a\x1b.Cast.UpdateVideoScriptResp\"\x00\x12E\n" + - "\x0eGetVideoScript\x12\x17.Cast.GetVideoScriptReq\x1a\x18.Cast.GetVideoScriptResp\"\x00\x12K\n" + - "\x10ListVideoScripts\x12\x19.Cast.ListVideoScriptsReq\x1a\x1a.Cast.ListVideoScriptsResp\"\x00\x12I\n" + - "\x11DeleteVideoScript\x12\x1a.Cast.DeleteVideoScriptReq\x1a\x16.google.protobuf.Empty\"\x00\x12]\n" + - "\x16UpdateVideoScriptBatch\x12\x1f.Cast.UpdateVideoScriptBatchReq\x1a .Cast.UpdateVideoScriptBatchResp\"\x00\x12K\n" + - "\x12UpdateScriptStatus\x12\x1b.Cast.UpdateScriptStatusReq\x1a\x16.google.protobuf.Empty\"\x00\x126\n" + - "\tGetLayout\x12\x12.Cast.GetLayoutReq\x1a\x13.Cast.GetLayoutResp\"\x00\x129\n" + - "\tSetLayout\x12\x12.Cast.SetLayoutReq\x1a\x16.google.protobuf.Empty\"\x00\x12?\n" + - "\fUpdatePrompt\x12\x15.Cast.UpdatePromptReq\x1a\x16.google.protobuf.Empty\"\x00\x12?\n" + - "\fDeletePrompt\x12\x15.Cast.DeletePromptReq\x1a\x16.google.protobuf.Empty\"\x00\x126\n" + - "\tGetPrompt\x12\x12.Cast.GetPromptReq\x1a\x13.Cast.GetPromptResp\"\x00\x12<\n" + - "\vListPrompts\x12\x14.Cast.ListPromptsReq\x1a\x15.Cast.ListPromptsResp\"\x00\x12N\n" + - "\x11UpdatePromptBatch\x12\x1a.Cast.UpdatePromptBatchReq\x1a\x1b.Cast.UpdatePromptBatchResp\"\x00\x12?\n" + - "\fUpdateArtist\x12\x15.Cast.UpdateArtistReq\x1a\x16.Cast.UpdateArtistResp\"\x00\x126\n" + - "\tGetArtist\x12\x12.Cast.GetArtistReq\x1a\x13.Cast.GetArtistResp\"\x00\x12Q\n" + - "\x12CreateWorkAnalysis\x12\x1b.Cast.CreateWorkAnalysisReq\x1a\x1c.Cast.CreateWorkAnalysisResp\"\x00\x12K\n" + - "\x12UpdateWorkAnalysis\x12\x1b.Cast.UpdateWorkAnalysisReq\x1a\x16.google.protobuf.Empty\"\x00\x12W\n" + - "\x18UpdateWorkAnalysisStatus\x12!.Cast.UpdateWorkAnalysisStatusReq\x1a\x16.google.protobuf.Empty\"\x00\x12T\n" + - "\x0fGetWorkAnalysis\x12\x1e.Cast.GetWorkAnalysisDetailReq\x1a\x1f.Cast.GetWorkAnalysisDetailResp\"\x00\x12T\n" + - "\x15GetLatestWorkAnalysis\x12\x1e.Cast.GetLatestWorkAnalysisReq\x1a\x19.Cast.GetWorkAnalysisResp\"\x00\x12K\n" + - "\x10ListWorkAnalysis\x12\x19.Cast.ListWorkAnalysisReq\x1a\x1a.Cast.ListWorkAnalysisResp\"\x00\x12K\n" + - "\x12DeleteWorkAnalysis\x12\x1b.Cast.DeleteWorkAnalysisReq\x1a\x16.google.protobuf.Empty\"\x00\x12_\n" + - "\x1cUpdateWorkAnalysisApprovalID\x12%.Cast.UpdateWorkAnalysisApprovalIDReq\x1a\x16.google.protobuf.Empty\"\x00\x12E\n" + - "\x0eArtistDataList\x12\x17.Cast.ArtistDataListReq\x1a\x18.Cast.ArtistDataListResp\"\x00\x12B\n" + - "\rMediaDataList\x12\x16.Cast.MediaDataListReq\x1a\x17.Cast.MediaDataListResp\"\x00\x12?\n" + - "\fDataOverview\x12\x15.Cast.DataOverviewReq\x1a\x16.Cast.DataOverviewResp\"\x00\x12T\n" + - "\x13ArtistMetricsSeries\x12\x1c.Cast.ArtistMetricsSeriesReq\x1a\x1d.Cast.ArtistMetricsSeriesResp\"\x00\x12c\n" + - "\x18ArtistMetricsDailyWindow\x12!.Cast.ArtistMetricsDailyWindowReq\x1a\".Cast.ArtistMetricsDailyWindowResp\"\x00\x12N\n" + - "\x11TobeConfirmedList\x12\x1a.Cast.TobeConfirmedListReq\x1a\x1b.Cast.TobeConfirmedListResp\"\x00\x12o\n" + - "\x1cUpsertMediaMetricsDailyBatch\x12%.Cast.UpsertMediaMetricsDailyBatchReq\x1a&.Cast.UpsertMediaMetricsDailyBatchResp\"\x00\x12l\n" + - "\x1bUpsertWorkMetricsDailyBatch\x12$.Cast.UpsertWorkMetricsDailyBatchReq\x1a%.Cast.UpsertWorkMetricsDailyBatchResp\"\x00\x12Z\n" + - "\x15GetArtistAyrShareInfo\x12\x1e.Cast.GetArtistAyrShareInfoReq\x1a\x1f.Cast.GetArtistAyrShareInfoResp\"\x00\x12W\n" + - "\x14ListWorkPlatformInfo\x12\x1d.Cast.ListWorkPlatformInfoReq\x1a\x1e.Cast.ListWorkPlatformInfoResp\"\x00B\rZ\v./cast;castb\x06proto3" +var file_pb_fiee_cast_proto_rawDesc = []byte{ + 0x0a, 0x12, 0x70, 0x62, 0x2f, 0x66, 0x69, 0x65, 0x65, 0x2f, 0x63, 0x61, 0x73, 0x74, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x43, 0x61, 0x73, 0x74, 0x1a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x1a, 0x17, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, + 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc8, + 0x03, 0x0a, 0x10, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, + 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x56, 0x61, + 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, + 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x34, 0x0a, + 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, + 0x69, 0x7a, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, + 0x69, 0x7a, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, + 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, + 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, + 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x61, + 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6e, + 0x65, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, + 0x6e, 0x65, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0xa3, 0x05, 0x0a, 0x0d, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2a, 0x0a, 0x10, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, + 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, + 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, + 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, + 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x61, + 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x65, 0x6e, + 0x64, 0x69, 0x6e, 0x67, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x75, 0x70, 0x6c, 0x6f, 0x61, + 0x64, 0x65, 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x12, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x72, 0x65, 0x6c, 0x65, 0x61, + 0x73, 0x65, 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x12, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, + 0x6e, 0x67, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x50, + 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, + 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x50, 0x6f, 0x73, + 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x72, 0x65, + 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x22, + 0x52, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, + 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x22, 0xd1, 0x03, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, + 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x26, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, + 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, + 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, + 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, + 0x4e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0x44, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x3e, 0x0a, + 0x10, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, + 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x41, 0x0a, + 0x11, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x11, 0x6f, 0x6c, 0x64, 0x42, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6f, + 0x6c, 0x64, 0x42, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x22, 0x88, 0x01, 0x0a, 0x0e, 0x42, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, + 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, + 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xb1, 0x07, 0x0a, 0x12, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, + 0x4d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x3b, + 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, 0x12, 0x3b, 0x0a, 0x0e, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x33, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x34, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, + 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, + 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, + 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, + 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, + 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x18, 0x12, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, + 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, + 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x14, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x22, 0x0a, 0x0c, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x15, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, + 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x16, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, + 0x17, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x35, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, + 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x22, + 0x31, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, + 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x22, 0xbf, 0x01, 0x0a, 0x0d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24, 0x0a, 0x0d, 0x66, 0x6f, 0x72, 0x62, 0x69, 0x64, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x6f, 0x72, + 0x62, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x61, + 0x6e, 0x4a, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x61, 0x6e, + 0x4a, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x6e, 0x51, 0x75, 0x6f, 0x74, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x61, 0x6e, 0x51, 0x75, 0x6f, 0x74, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x61, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x41, 0x49, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, + 0x69, 0x73, 0x41, 0x49, 0x22, 0xca, 0x07, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x76, + 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, + 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, + 0x36, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x07, + 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x31, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x32, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x33, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x12, 0x3b, + 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x12, 0x16, 0x0a, 0x06, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, + 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x12, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x63, + 0x6f, 0x76, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4d, 0x73, 0x18, + 0x13, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4d, 0x73, 0x12, 0x37, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x45, + 0x4e, 0x55, 0x4d, 0x52, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x15, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, + 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, + 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x35, 0x22, 0x31, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, + 0x55, 0x75, 0x69, 0x64, 0x22, 0x90, 0x01, 0x0a, 0x0c, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, + 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x38, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, + 0x6f, 0x22, 0x6e, 0x0a, 0x16, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x22, 0x42, 0x0a, 0x17, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x04, + 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x99, 0x06, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, + 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x56, 0x61, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, + 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, + 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, + 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, + 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, + 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x30, 0x0a, + 0x13, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x45, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x12, + 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, + 0x56, 0x61, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, + 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x0e, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, + 0x4e, 0x75, 0x6d, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, + 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, + 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x69, + 0x6e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x69, 0x6e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6d, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6d, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x79, 0x6f, + 0x75, 0x74, 0x75, 0x62, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x62, + 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x16, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x22, 0x9a, 0x07, 0x0a, 0x0c, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, + 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0xc6, 0x06, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, + 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x14, 0x0a, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, + 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, + 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, + 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, + 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, + 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, + 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x61, 0x6e, 0x61, + 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, + 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x0d, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x73, + 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x0e, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, + 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x22, + 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x12, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, + 0x75, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, + 0x62, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x62, 0x6c, 0x75, 0x65, + 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x2b, + 0x0a, 0x0d, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x12, + 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0xfb, 0x01, 0x0a, 0x0b, + 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, + 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, + 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x65, + 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, + 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, + 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xd0, 0x08, 0x0a, 0x0e, 0x57, 0x6f, + 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6d, 0x61, 0x67, + 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, + 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c, + 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, + 0x6d, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x1e, + 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3b, + 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, 0x12, 0x3b, 0x0a, 0x0e, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x33, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x34, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x1a, + 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x33, 0x0a, 0x0b, 0x57, 0x6f, + 0x72, 0x6b, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x67, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, + 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, + 0x6f, 0x72, 0x79, 0x12, 0x4a, 0x0a, 0x0c, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x44, + 0x61, 0x74, 0x61, 0x18, 0x12, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x2e, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x0c, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x44, 0x61, 0x74, 0x61, 0x12, + 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x4d, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4d, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6e, + 0x65, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x19, + 0x20, 0x03, 0x28, 0x05, 0x52, 0x0f, 0x6e, 0x65, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, + 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x18, 0x1b, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x1a, 0x54, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x29, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xca, 0x02, 0x0a, + 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, + 0x12, 0x34, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, + 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x6d, + 0x61, 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, + 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, + 0x65, 0x70, 0x6c, 0x79, 0x12, 0x37, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x45, 0x4e, 0x55, 0x4d, + 0x52, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x1a, 0x0a, + 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x32, 0x0a, 0x10, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0xa2, 0x02, + 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xda, 0x01, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, + 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x1c, + 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, + 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, + 0x6d, 0x65, 0x22, 0x6b, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, + 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, + 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, + 0x8a, 0x03, 0x0a, 0x0e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2d, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xb2, 0x02, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, + 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, + 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, + 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x22, 0x2a, 0x0a, 0x0a, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x6f, + 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x77, + 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x73, 0x22, 0x85, 0x01, 0x0a, 0x0b, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x1a, 0x4a, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, + 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, + 0x22, 0x86, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, + 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2c, 0x0a, + 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x53, 0x0a, 0x0d, 0x52, 0x65, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, + 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x28, + 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x57, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0x29, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, + 0x75, 0x69, 0x64, 0x22, 0xe6, 0x01, 0x0a, 0x0c, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x55, 0x75, 0x69, 0x64, 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, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, + 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, + 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, + 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x2f, 0x0a, 0x0d, + 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0xd4, 0x01, + 0x0a, 0x0e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, + 0x12, 0x32, 0x0a, 0x14, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, + 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x15, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x45, + 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x15, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x45, 0x66, 0x66, 0x65, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x49, 0x6e, + 0x73, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x49, 0x6e, 0x73, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x44, 0x4d, 0x45, 0x66, + 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x10, 0x44, 0x4d, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4e, 0x0a, 0x12, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, + 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x38, 0x0a, 0x0a, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x73, 0x22, 0x91, 0x01, 0x0a, 0x13, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, + 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x38, 0x0a, 0x0a, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, + 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, + 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, + 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, + 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xdd, 0x02, 0x0a, 0x0c, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, + 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, + 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, 0x70, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, + 0x73, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x12, 0x3d, 0x0a, + 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0d, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, + 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, + 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, 0x64, 0x22, 0x5b, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x3e, 0x0a, 0x10, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x10, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, + 0x6f, 0x44, 0x61, 0x74, 0x61, 0x22, 0x38, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, + 0x9b, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, + 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, + 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, + 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x16, 0x0a, + 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3a, 0x0a, + 0x12, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xe2, 0x03, 0x0a, 0x13, 0x52, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x12, 0x32, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, + 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x04, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x96, 0x03, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, + 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x57, 0x0a, 0x10, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, + 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, + 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x10, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, + 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x4b, 0x65, 0x79, 0x1a, 0xf8, 0x01, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x12, 0x34, 0x0a, 0x0a, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, + 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, + 0x65, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3d, + 0x0a, 0x0f, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, + 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x24, 0x0a, + 0x10, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x75, 0x72, 0x6c, 0x22, 0x3f, 0x0a, 0x11, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x22, 0x8e, 0x01, 0x0a, 0x12, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x61, + 0x75, 0x74, 0x68, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, + 0x74, 0x68, 0x55, 0x72, 0x6c, 0x22, 0x56, 0x0a, 0x14, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x59, 0x6f, + 0x75, 0x74, 0x75, 0x62, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, + 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x7d, 0x0a, + 0x15, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x59, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x66, 0x72, + 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, + 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, + 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x77, 0x0a, 0x13, + 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, + 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, + 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x22, 0x16, 0x0a, 0x14, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, + 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0xf8, 0x01, + 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, + 0x12, 0x2d, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x52, 0x65, 0x71, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x1a, + 0xb6, 0x01, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, + 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, + 0x0a, 0x04, 0x61, 0x73, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x73, + 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x61, 0x75, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x61, 0x75, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x83, 0x01, 0x0a, 0x0f, 0x52, 0x65, 0x66, + 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, + 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x5c, + 0x0a, 0x10, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x7f, 0x0a, 0x13, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, + 0x2c, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, 0x69, 0x61, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, 0x22, 0x94, 0x01, + 0x0a, 0x14, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x12, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x9e, 0x02, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, + 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, + 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x75, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x2b, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, + 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x22, 0x27, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x8c, 0x03, 0x0a, 0x12, + 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, + 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, + 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, + 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x22, 0xb5, 0x02, 0x0a, 0x13, 0x4c, + 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, + 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x26, 0x0a, 0x0e, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, + 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, + 0x64, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0d, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, + 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x22, 0xa5, 0x03, 0x0a, 0x0f, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, + 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, + 0x72, 0x6b, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, + 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x57, 0x0a, 0x14, 0x4c, 0x69, + 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x29, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, + 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x22, 0x2a, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, + 0x46, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x29, 0x0a, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x89, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x29, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, + 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x22, 0xa7, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, + 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, + 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, + 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, + 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x56, 0x0a, + 0x0c, 0x53, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, + 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, + 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x6f, 0x72, + 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6f, 0x72, + 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x42, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, + 0x75, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1a, 0x0a, + 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3f, 0x0a, 0x0d, 0x47, 0x65, 0x74, + 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, + 0x0a, 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x79, 0x0a, 0x0f, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, + 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, + 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x08, 0x63, 0x61, 0x74, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x31, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x2e, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x93, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74, + 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x74, 0x65, + 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, + 0x72, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xe4, + 0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x52, 0x65, + 0x71, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x63, 0x61, 0x74, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x52, + 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x24, 0x0a, + 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x55, 0x73, 0x65, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xfc, 0x01, 0x0a, 0x0a, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x08, + 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, + 0x55, 0x4d, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, + 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, + 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1a, + 0x0a, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x69, + 0x6e, 0x65, 0x4e, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x69, 0x6e, 0x65, + 0x4e, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x44, 0x61, 0x74, 0x65, 0x22, 0x4d, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x6f, + 0x6d, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, + 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x22, 0x3c, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, + 0x6d, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x22, 0x7f, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x22, 0x7a, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x72, 0x65, 0x66, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0x57, + 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x12, 0x30, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x55, 0x75, 0x69, 0x64, 0x22, 0x32, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x2e, 0x0a, 0x0c, 0x47, + 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x55, 0x0a, 0x0d, 0x47, + 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, + 0x0a, 0x04, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x75, + 0x69, 0x64, 0x22, 0xa7, 0x06, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, + 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, + 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, + 0x72, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, + 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, + 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, + 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, + 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, + 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, + 0x69, 0x65, 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, + 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, + 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, + 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x12, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, + 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x0f, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x18, + 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, + 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, + 0x61, 0x72, 0x65, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x22, 0x2c, 0x0a, 0x16, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0xd1, 0x05, 0x0a, 0x15, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, + 0x66, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, + 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, + 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, + 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, + 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, + 0x61, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, + 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x55, 0x55, 0x49, 0x44, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x12, 0x28, + 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, + 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, + 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, + 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, + 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, + 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x22, 0xb7, + 0x02, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x34, + 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, + 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x72, + 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x24, + 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, + 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, + 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, + 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x22, 0xc9, 0x02, 0x0a, 0x13, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, + 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, + 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x61, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, + 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, + 0x49, 0x44, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x6f, 0x72, 0x49, 0x44, 0x22, 0xfe, 0x01, 0x0a, 0x16, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, + 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, + 0x75, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x81, 0x02, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, + 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, + 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, + 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x81, 0x02, 0x0a, 0x17, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, + 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, + 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, + 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, + 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, + 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, + 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8a, 0x02, + 0x0a, 0x1a, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, + 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, + 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, + 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, + 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, + 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x84, 0x02, 0x0a, 0x18, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, + 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, + 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, + 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, + 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, + 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, + 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x22, 0x87, 0x01, 0x0a, 0x15, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x54, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, + 0x1e, 0x0a, 0x0a, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x12, + 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, + 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8b, 0x01, 0x0a, 0x19, + 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, + 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8a, 0x01, 0x0a, 0x18, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, + 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0xc1, 0x01, 0x0a, 0x11, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x22, 0x0a, 0x0c, + 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x2e, 0x0a, 0x18, 0x47, 0x65, + 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x32, 0x0a, 0x18, 0x47, 0x65, + 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0xef, + 0x0b, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, + 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, + 0x75, 0x6d, 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, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, + 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x14, 0x0a, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, + 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x20, + 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, + 0x63, 0x6f, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x10, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, + 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, + 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, + 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, + 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, + 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, + 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, + 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, + 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x17, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x44, 0x61, 0x79, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, + 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, + 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x3c, 0x0a, 0x0a, 0x66, 0x61, + 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0a, 0x66, 0x61, + 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x76, 0x69, 0x65, 0x77, + 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x76, 0x69, + 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x6c, 0x69, 0x6b, + 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x6c, + 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x48, 0x0a, 0x0e, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x21, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x68, + 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0c, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x0f, 0x74, 0x6f, 0x70, 0x43, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x0f, + 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, + 0x51, 0x0a, 0x13, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x52, 0x13, 0x6d, + 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, 0x69, + 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x12, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x12, + 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, + 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, + 0x26, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x22, 0xf1, 0x0c, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, + 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, + 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x77, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, + 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, + 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, + 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x73, 0x74, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, + 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, + 0x72, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, + 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, + 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, + 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, + 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, + 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, + 0x69, 0x65, 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x16, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, + 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, + 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, + 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x1b, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, + 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x4b, 0x0a, 0x13, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x1d, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x13, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x3c, 0x0a, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, + 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, + 0x69, 0x65, 0x73, 0x52, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, + 0x3f, 0x0a, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x1f, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, + 0x69, 0x65, 0x73, 0x52, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x12, 0x3f, 0x0a, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, + 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x12, 0x48, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, + 0x69, 0x65, 0x73, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0e, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x22, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x52, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, + 0x45, 0x0a, 0x0f, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, + 0x65, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x6f, 0x70, 0x43, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x0f, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x51, 0x0a, 0x13, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x24, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x44, 0x61, 0x79, 0x52, 0x13, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x12, 0x62, 0x65, 0x73, + 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, + 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x12, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x78, 0x74, + 0x72, 0x61, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, + 0x61, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x27, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x18, 0x28, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x22, 0xc9, 0x03, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, + 0x75, 0x75, 0x69, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, + 0x75, 0x75, 0x69, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, + 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, + 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, + 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, + 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x30, + 0x0a, 0x13, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, + 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, + 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, + 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x0c, + 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x22, 0xe4, 0x03, 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, + 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, + 0x6d, 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, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, 0x0a, + 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, + 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x63, + 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, + 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, + 0x55, 0x72, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, + 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, + 0x44, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x58, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x2a, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x22, 0x2b, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0xa5, + 0x02, 0x0a, 0x11, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, + 0x61, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, + 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x65, 0x78, + 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x26, + 0x0a, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, + 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, + 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xd4, 0x05, 0x0a, 0x12, 0x41, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, + 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, + 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, + 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x3a, 0x0a, + 0x18, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x18, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x12, 0x64, 0x61, 0x74, + 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x44, 0x0a, 0x1d, 0x64, 0x61, 0x74, + 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x1d, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, + 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, + 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, + 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, + 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x61, 0x73, 0x74, 0x57, 0x6f, 0x72, + 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x61, + 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x65, + 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, + 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x58, 0x0a, + 0x12, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, + 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xac, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x85, 0x04, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, + 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, + 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, + 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x61, 0x73, 0x74, + 0x57, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0d, 0x63, 0x61, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, + 0x0a, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, + 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x56, + 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, + 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x25, 0x0a, 0x0f, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, + 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x22, 0xc0, 0x06, + 0x0a, 0x10, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x11, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x46, 0x61, 0x6e, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x74, 0x6f, 0x64, 0x61, + 0x79, 0x46, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, + 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, + 0x64, 0x61, 0x79, 0x56, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x56, 0x69, 0x65, 0x77, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x4c, 0x69, 0x6b, + 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, + 0x6f, 0x64, 0x61, 0x79, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, + 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x12, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x53, + 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x10, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x49, 0x6d, 0x61, 0x67, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, + 0x61, 0x79, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, + 0x74, 0x6f, 0x64, 0x61, 0x79, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x56, 0x69, 0x64, 0x65, + 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x15, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x15, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, + 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x16, 0x74, 0x6f, 0x42, 0x65, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x03, 0x52, 0x16, 0x74, 0x6f, 0x42, 0x65, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x2e, 0x0a, 0x12, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, + 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x61, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x22, 0x90, 0x02, 0x0a, 0x16, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x70, + 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, + 0x61, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x12, 0x28, 0x0a, + 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, + 0x72, 0x65, 0x73, 0x22, 0xf2, 0x03, 0x0a, 0x17, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x3c, 0x0a, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x52, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, + 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x52, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, + 0x0a, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, + 0x65, 0x73, 0x52, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, + 0x48, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, + 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, + 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x45, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, + 0x61, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x22, 0x71, 0x0a, 0x1b, 0x41, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, + 0x6e, 0x64, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x22, 0x37, 0x0a, 0x0b, 0x53, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, + 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x22, 0x47, 0x0a, 0x11, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, + 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, + 0x6d, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x3c, 0x0a, + 0x12, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x50, 0x6f, + 0x69, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x94, 0x04, 0x0a, 0x1c, + 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, + 0x6c, 0x79, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x09, + 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, + 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, + 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x04, 0x66, 0x61, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, + 0x69, 0x6e, 0x74, 0x52, 0x04, 0x66, 0x61, 0x6e, 0x73, 0x12, 0x27, 0x0a, 0x05, 0x76, 0x69, 0x65, + 0x77, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x69, 0x65, + 0x77, 0x73, 0x12, 0x27, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x08, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x06, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x06, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x44, 0x61, 0x79, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x50, 0x6f, + 0x69, 0x6e, 0x74, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, + 0x61, 0x79, 0x22, 0x66, 0x0a, 0x14, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, + 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xff, 0x03, 0x0a, 0x11, 0x54, + 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, + 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x75, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, + 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, + 0x67, 0x6f, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, + 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x77, 0x6f, + 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, + 0x72, 0x49, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, + 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, + 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, + 0x64, 0x41, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, + 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x0f, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, + 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x5a, 0x0a, 0x15, + 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x55, 0x0a, 0x1f, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x22, + 0xed, 0x03, 0x0a, 0x15, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, + 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x26, 0x0a, + 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, + 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, + 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, + 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, + 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, + 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, + 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x1e, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, + 0x52, 0x0a, 0x1f, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x65, 0x71, 0x12, 0x2f, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x22, 0x3c, 0x0a, 0x20, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, + 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x22, 0xaa, 0x03, 0x0a, 0x14, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, + 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1a, + 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, + 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, + 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x50, + 0x0a, 0x1e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, + 0x12, 0x2e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, + 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x22, 0x3b, 0x0a, 0x1f, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x9a, 0x01, + 0x0a, 0x18, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, + 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, + 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, + 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, + 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x9a, 0x02, 0x0a, 0x12, 0x41, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x14, 0x0a, + 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, + 0x66, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x4b, 0x65, 0x79, 0x12, 0x2e, 0x0a, 0x12, 0x61, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x12, 0x61, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x5f, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x41, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x9b, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, + 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x88, 0x04, 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6b, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, + 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, + 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x20, 0x0a, + 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, + 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, + 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, + 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, + 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, + 0x65, 0x22, 0x5c, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2a, + 0x54, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, + 0x4d, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, + 0x0a, 0x06, 0x54, 0x49, 0x4b, 0x54, 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x59, 0x4f, + 0x55, 0x54, 0x55, 0x42, 0x45, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x49, 0x4e, 0x53, 0x10, 0x03, + 0x12, 0x06, 0x0a, 0x02, 0x44, 0x4d, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x42, 0x55, 0x4c, 0x45, + 0x53, 0x4b, 0x59, 0x10, 0x05, 0x2a, 0x39, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, + 0x57, 0x4e, 0x41, 0x75, 0x74, 0x68, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x75, 0x74, 0x68, + 0x4f, 0x6b, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x75, 0x74, 0x68, 0x4e, 0x6f, 0x10, 0x02, + 0x2a, 0x81, 0x01, 0x0a, 0x0e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, + 0x4e, 0x55, 0x4d, 0x12, 0x0d, 0x0a, 0x09, 0x4e, 0x4f, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, + 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x52, 0x4d, 0x10, 0x01, 0x12, + 0x0c, 0x0a, 0x08, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x11, 0x0a, + 0x0d, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x10, 0x03, + 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x4a, + 0x45, 0x43, 0x54, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, + 0x4c, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x52, 0x45, + 0x41, 0x44, 0x10, 0x06, 0x2a, 0x56, 0x0a, 0x0f, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x75, 0x74, 0x6f, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x55, 0x4e, 0x4b, 0x4f, 0x4e, 0x57, 0x10, 0x00, 0x12, + 0x14, 0x0a, 0x10, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x54, + 0x52, 0x55, 0x45, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x10, 0x02, 0x2a, 0xa6, 0x01, 0x0a, + 0x11, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, + 0x55, 0x4d, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x4f, 0x10, 0x00, 0x12, 0x1a, 0x0a, + 0x16, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x5f, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, + 0x44, 0x4f, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x46, 0x41, 0x49, + 0x4c, 0x10, 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, + 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x2a, 0x59, 0x0a, 0x0c, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x14, 0x0a, 0x10, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, + 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x54, + 0x49, 0x54, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, + 0x54, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x03, 0x12, 0x10, + 0x0a, 0x0c, 0x4c, 0x4f, 0x4e, 0x47, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x10, 0x04, + 0x32, 0xbd, 0x23, 0x0a, 0x04, 0x43, 0x61, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x0d, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, + 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x51, 0x0a, + 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, + 0x1a, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, + 0x12, 0x42, 0x0a, 0x0d, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, + 0x72, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, + 0x73, 0x70, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0b, 0x42, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, + 0x67, 0x65, 0x72, 0x12, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x42, 0x69, 0x6e, 0x64, 0x4d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, + 0x79, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, + 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, + 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, + 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x48, 0x0a, + 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, + 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, + 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x09, 0x4d, 0x65, 0x64, 0x69, 0x61, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, + 0x54, 0x0a, 0x13, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, + 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x08, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, + 0x74, 0x12, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x0a, 0x57, 0x6f, + 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, + 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, + 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x0a, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x30, 0x0a, 0x07, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x12, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, + 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x09, 0x52, 0x65, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x52, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, + 0x35, 0x0a, 0x07, 0x44, 0x65, 0x6c, 0x57, 0x6f, 0x72, 0x6b, 0x12, 0x10, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x57, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x08, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, + 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x0a, 0x41, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x14, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, + 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, + 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, + 0x12, 0x5d, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, + 0x4f, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x12, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, + 0x12, 0x48, 0x0a, 0x0f, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, + 0x69, 0x73, 0x74, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, + 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x4f, 0x41, + 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, + 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x4f, + 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x12, 0x17, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x56, 0x32, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, + 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, + 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x10, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, + 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, + 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, + 0x71, 0x1a, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, + 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, + 0x3d, 0x0a, 0x0b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x12, 0x14, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x3f, + 0x0a, 0x0c, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x15, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, + 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, + 0x4b, 0x0a, 0x10, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1a, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x38, 0x0a, 0x04, + 0x54, 0x65, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x1a, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, + 0x71, 0x1a, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, + 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, + 0x10, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x73, 0x12, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x49, 0x0a, 0x11, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, + 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x5d, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, + 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, + 0x1a, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, + 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, + 0x00, 0x12, 0x36, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x12, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, + 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, + 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x09, 0x53, 0x65, 0x74, + 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x65, + 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, + 0x6d, 0x70, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, + 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3c, + 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x12, 0x14, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, + 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x12, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x12, 0x15, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, 0x0a, + 0x09, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x13, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x21, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x54, + 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x12, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, + 0x71, 0x1a, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, + 0x73, 0x70, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, + 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1e, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x10, 0x4c, 0x69, + 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x19, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x61, 0x6c, 0x49, 0x44, 0x12, 0x25, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, + 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, + 0x1a, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, + 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, + 0x12, 0x3f, 0x0a, 0x0c, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, + 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, + 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, + 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x73, 0x70, 0x22, + 0x00, 0x12, 0x54, 0x0a, 0x13, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, 0x72, + 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x63, 0x0a, 0x18, 0x41, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, 0x6e, + 0x64, 0x6f, 0x77, 0x12, 0x21, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, 0x6e, + 0x64, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x22, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, + 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, + 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, + 0x74, 0x12, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x6f, 0x0a, 0x1c, + 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x25, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x65, 0x71, 0x1a, 0x26, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, + 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, + 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x6c, 0x0a, + 0x1b, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x24, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x65, 0x71, 0x1a, 0x25, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, + 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x15, 0x47, + 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x57, + 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1e, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, + 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x63, 0x61, 0x73, 0x74, 0x3b, 0x63, 0x61, 0x73, 0x74, 0x62, + 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} var ( file_pb_fiee_cast_proto_rawDescOnce sync.Once - file_pb_fiee_cast_proto_rawDescData []byte + file_pb_fiee_cast_proto_rawDescData = file_pb_fiee_cast_proto_rawDesc ) func file_pb_fiee_cast_proto_rawDescGZIP() []byte { file_pb_fiee_cast_proto_rawDescOnce.Do(func() { - file_pb_fiee_cast_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_pb_fiee_cast_proto_rawDesc), len(file_pb_fiee_cast_proto_rawDesc))) + file_pb_fiee_cast_proto_rawDescData = protoimpl.X.CompressGZIP(file_pb_fiee_cast_proto_rawDescData) }) return file_pb_fiee_cast_proto_rawDescData } var file_pb_fiee_cast_proto_enumTypes = make([]protoimpl.EnumInfo, 6) -var file_pb_fiee_cast_proto_msgTypes = make([]protoimpl.MessageInfo, 144) -var file_pb_fiee_cast_proto_goTypes = []any{ +var file_pb_fiee_cast_proto_msgTypes = make([]protoimpl.MessageInfo, 146) +var file_pb_fiee_cast_proto_goTypes = []interface{}{ (PlatformIDENUM)(0), // 0: Cast.PlatformIDENUM (AuthStatusENUM)(0), // 1: Cast.AuthStatusENUM (WorkActionENUM)(0), // 2: Cast.WorkActionENUM @@ -13448,136 +15203,138 @@ var file_pb_fiee_cast_proto_goTypes = []any{ (*UpdateWorkVideoResp)(nil), // 18: Cast.UpdateWorkVideoResp (*MediaInfoReq)(nil), // 19: Cast.MediaInfoReq (*MediaInfoResp)(nil), // 20: Cast.MediaInfoResp - (*WorkListReq)(nil), // 21: Cast.WorkListReq - (*WorkListResp)(nil), // 22: Cast.WorkListResp - (*WorkDetailReq)(nil), // 23: Cast.WorkDetailReq - (*WorkLogInfo)(nil), // 24: Cast.WorkLogInfo - (*WorkDetailResp)(nil), // 25: Cast.WorkDetailResp - (*UpdateStatusReq)(nil), // 26: Cast.UpdateStatusReq - (*MediaAccountsReq)(nil), // 27: Cast.MediaAccountsReq - (*MediaAccountsResp)(nil), // 28: Cast.MediaAccountsResp - (*MediaWorksReq)(nil), // 29: Cast.MediaWorksReq - (*MediaWorksResp)(nil), // 30: Cast.MediaWorksResp - (*PublishReq)(nil), // 31: Cast.PublishReq - (*PublishResp)(nil), // 32: Cast.PublishResp - (*RePublishReq)(nil), // 33: Cast.RePublishReq - (*RePublishResp)(nil), // 34: Cast.RePublishResp - (*DelWorkReq)(nil), // 35: Cast.DelWorkReq - (*WorkInfoReq)(nil), // 36: Cast.WorkInfoReq - (*WorkInfoResp)(nil), // 37: Cast.WorkInfoResp - (*ArtistInfoReq)(nil), // 38: Cast.ArtistInfoReq - (*ArtistInfoResp)(nil), // 39: Cast.ArtistInfoResp - (*ImportWorkBatchReq)(nil), // 40: Cast.ImportWorkBatchReq - (*ImportWorkBatchResp)(nil), // 41: Cast.ImportWorkBatchResp - (*PlatformInfo)(nil), // 42: Cast.PlatformInfo - (*UpdateWorkPlatformInfoReq)(nil), // 43: Cast.UpdateWorkPlatformInfoReq - (*UpdateWorkPlatformInfoResp)(nil), // 44: Cast.UpdateWorkPlatformInfoResp - (*UpdateWorkPublishLogReq)(nil), // 45: Cast.UpdateWorkPublishLogReq - (*RefreshWorkListReq)(nil), // 46: Cast.RefreshWorkListReq - (*RefreshWorkListResp)(nil), // 47: Cast.RefreshWorkListResp - (*OAuthAccountReq)(nil), // 48: Cast.OAuthAccountReq - (*OAuthAccountResp)(nil), // 49: Cast.OAuthAccountResp - (*OAuthAccountV2Req)(nil), // 50: Cast.OAuthAccountV2Req - (*OAuthAccountV2Resp)(nil), // 51: Cast.OAuthAccountV2Resp - (*OAuthYoutubeTokenReq)(nil), // 52: Cast.OAuthYoutubeTokenReq - (*OAuthYoutubeTokenResp)(nil), // 53: Cast.OAuthYoutubeTokenResp - (*OAuthCodeToTokenReq)(nil), // 54: Cast.OAuthCodeToTokenReq - (*OAuthCodeToTokenResp)(nil), // 55: Cast.OAuthCodeToTokenResp - (*UpdateOAuthReq)(nil), // 56: Cast.UpdateOAuthReq - (*RefreshTokenReq)(nil), // 57: Cast.RefreshTokenReq - (*RefreshTokenResp)(nil), // 58: Cast.RefreshTokenResp - (*PublishMediaInfoReq)(nil), // 59: Cast.PublishMediaInfoReq - (*PublishMediaInfoResp)(nil), // 60: Cast.PublishMediaInfoResp - (*UpdateVideoScriptReq)(nil), // 61: Cast.UpdateVideoScriptReq - (*UpdateVideoScriptResp)(nil), // 62: Cast.UpdateVideoScriptResp - (*GetVideoScriptReq)(nil), // 63: Cast.GetVideoScriptReq - (*GetVideoScriptResp)(nil), // 64: Cast.GetVideoScriptResp - (*ListVideoScriptsReq)(nil), // 65: Cast.ListVideoScriptsReq - (*VideoScriptInfo)(nil), // 66: Cast.VideoScriptInfo - (*ListVideoScriptsResp)(nil), // 67: Cast.ListVideoScriptsResp - (*DeleteVideoScriptReq)(nil), // 68: Cast.DeleteVideoScriptReq - (*UpdateVideoScriptBatchReq)(nil), // 69: Cast.UpdateVideoScriptBatchReq - (*UpdateVideoScriptBatchResp)(nil), // 70: Cast.UpdateVideoScriptBatchResp - (*UpdateScriptStatusReq)(nil), // 71: Cast.UpdateScriptStatusReq - (*SetLayoutReq)(nil), // 72: Cast.SetLayoutReq - (*GetLayoutReq)(nil), // 73: Cast.GetLayoutReq - (*GetLayoutResp)(nil), // 74: Cast.GetLayoutResp - (*UpdatePromptReq)(nil), // 75: Cast.UpdatePromptReq - (*DeletePromptReq)(nil), // 76: Cast.DeletePromptReq - (*GetPromptReq)(nil), // 77: Cast.GetPromptReq - (*GetPromptResp)(nil), // 78: Cast.GetPromptResp - (*ListPromptsReq)(nil), // 79: Cast.ListPromptsReq - (*PromptInfo)(nil), // 80: Cast.PromptInfo - (*ListPromptsResp)(nil), // 81: Cast.ListPromptsResp - (*UpdatePromptBatchReq)(nil), // 82: Cast.UpdatePromptBatchReq - (*UpdatePromptBatchResp)(nil), // 83: Cast.UpdatePromptBatchResp - (*ArtistInfo)(nil), // 84: Cast.ArtistInfo - (*UpdateArtistReq)(nil), // 85: Cast.UpdateArtistReq - (*UpdateArtistResp)(nil), // 86: Cast.UpdateArtistResp - (*GetArtistReq)(nil), // 87: Cast.GetArtistReq - (*GetArtistResp)(nil), // 88: Cast.GetArtistResp - (*CreateWorkAnalysisReq)(nil), // 89: Cast.CreateWorkAnalysisReq - (*CreateWorkAnalysisResp)(nil), // 90: Cast.CreateWorkAnalysisResp - (*UpdateWorkAnalysisReq)(nil), // 91: Cast.UpdateWorkAnalysisReq - (*UpdateWorkAnalysisStatusReq)(nil), // 92: Cast.UpdateWorkAnalysisStatusReq - (*WorkAnalysisLogInfo)(nil), // 93: Cast.WorkAnalysisLogInfo - (*WorkAnalysisFansSeries)(nil), // 94: Cast.WorkAnalysisFansSeries - (*WorkAnalysisViewsSeries)(nil), // 95: Cast.WorkAnalysisViewsSeries - (*WorkAnalysisLikesSeries)(nil), // 96: Cast.WorkAnalysisLikesSeries - (*WorkAnalysisCommentsSeries)(nil), // 97: Cast.WorkAnalysisCommentsSeries - (*WorkAnalysisSharesSeries)(nil), // 98: Cast.WorkAnalysisSharesSeries - (*WorkAnalysisTopCities)(nil), // 99: Cast.WorkAnalysisTopCities - (*WorkAnalysisMostActiveDay)(nil), // 100: Cast.WorkAnalysisMostActiveDay - (*WorkAnalysisBestPostTime)(nil), // 101: Cast.WorkAnalysisBestPostTime - (*WorkAnalysisExtra)(nil), // 102: Cast.WorkAnalysisExtra - (*GetWorkAnalysisDetailReq)(nil), // 103: Cast.GetWorkAnalysisDetailReq - (*GetLatestWorkAnalysisReq)(nil), // 104: Cast.GetLatestWorkAnalysisReq - (*GetWorkAnalysisResp)(nil), // 105: Cast.GetWorkAnalysisResp - (*GetWorkAnalysisDetailResp)(nil), // 106: Cast.GetWorkAnalysisDetailResp - (*ListWorkAnalysisReq)(nil), // 107: Cast.ListWorkAnalysisReq - (*WorkAnalysisInfo)(nil), // 108: Cast.WorkAnalysisInfo - (*ListWorkAnalysisResp)(nil), // 109: Cast.ListWorkAnalysisResp - (*DeleteWorkAnalysisReq)(nil), // 110: Cast.DeleteWorkAnalysisReq - (*ArtistDataListReq)(nil), // 111: Cast.ArtistDataListReq - (*ArtistDataRespItem)(nil), // 112: Cast.ArtistDataRespItem - (*ArtistDataListResp)(nil), // 113: Cast.ArtistDataListResp - (*MediaDataListReq)(nil), // 114: Cast.MediaDataListReq - (*MediaDataListItem)(nil), // 115: Cast.MediaDataListItem - (*MediaDataListResp)(nil), // 116: Cast.MediaDataListResp - (*DataOverviewReq)(nil), // 117: Cast.DataOverviewReq - (*DataOverviewResp)(nil), // 118: Cast.DataOverviewResp - (*ArtistMetricsSeriesReq)(nil), // 119: Cast.ArtistMetricsSeriesReq - (*ArtistMetricsSeriesResp)(nil), // 120: Cast.ArtistMetricsSeriesResp - (*ArtistMetricsDailyWindowReq)(nil), // 121: Cast.ArtistMetricsDailyWindowReq - (*SimplePoint)(nil), // 122: Cast.SimplePoint - (*BestPostTimePoint)(nil), // 123: Cast.BestPostTimePoint - (*MostActiveDayPoint)(nil), // 124: Cast.MostActiveDayPoint - (*ArtistMetricsDailyWindowResp)(nil), // 125: Cast.ArtistMetricsDailyWindowResp - (*TobeConfirmedListReq)(nil), // 126: Cast.TobeConfirmedListReq - (*TobeConfirmedItem)(nil), // 127: Cast.TobeConfirmedItem - (*TobeConfirmedListResp)(nil), // 128: Cast.TobeConfirmedListResp - (*UpdateWorkAnalysisApprovalIDReq)(nil), // 129: Cast.UpdateWorkAnalysisApprovalIDReq - (*MediaMetricsDailyItem)(nil), // 130: Cast.MediaMetricsDailyItem - (*UpsertMediaMetricsDailyBatchReq)(nil), // 131: Cast.UpsertMediaMetricsDailyBatchReq - (*UpsertMediaMetricsDailyBatchResp)(nil), // 132: Cast.UpsertMediaMetricsDailyBatchResp - (*WorkMetricsDailyItem)(nil), // 133: Cast.WorkMetricsDailyItem - (*UpsertWorkMetricsDailyBatchReq)(nil), // 134: Cast.UpsertWorkMetricsDailyBatchReq - (*UpsertWorkMetricsDailyBatchResp)(nil), // 135: Cast.UpsertWorkMetricsDailyBatchResp - (*GetArtistAyrShareInfoReq)(nil), // 136: Cast.GetArtistAyrShareInfoReq - (*ArtistAyrShareInfo)(nil), // 137: Cast.ArtistAyrShareInfo - (*GetArtistAyrShareInfoResp)(nil), // 138: Cast.GetArtistAyrShareInfoResp - (*ListWorkPlatformInfoReq)(nil), // 139: Cast.ListWorkPlatformInfoReq - (*WorkPlatformInfo)(nil), // 140: Cast.WorkPlatformInfo - (*ListWorkPlatformInfoResp)(nil), // 141: Cast.ListWorkPlatformInfoResp - (*WorkListResp_Info)(nil), // 142: Cast.WorkListResp.Info - nil, // 143: Cast.WorkDetailResp.MediaAccDataEntry - (*MediaAccountsResp_Info)(nil), // 144: Cast.MediaAccountsResp.Info - (*MediaWorksResp_Info)(nil), // 145: Cast.MediaWorksResp.Info - (*PublishResp_Info)(nil), // 146: Cast.PublishResp.Info - (*RefreshWorkListResp_Info)(nil), // 147: Cast.RefreshWorkListResp.Info - (*RefreshWorkListResp_Info_PlatformInfo)(nil), // 148: Cast.RefreshWorkListResp.Info.PlatformInfo - (*UpdateOAuthReq_Info)(nil), // 149: Cast.UpdateOAuthReq.Info - (*emptypb.Empty)(nil), // 150: google.protobuf.Empty + (*MediaInfoByPlatformReq)(nil), // 21: Cast.MediaInfoByPlatformReq + (*MediaInfoByPlatformResp)(nil), // 22: Cast.MediaInfoByPlatformResp + (*WorkListReq)(nil), // 23: Cast.WorkListReq + (*WorkListResp)(nil), // 24: Cast.WorkListResp + (*WorkDetailReq)(nil), // 25: Cast.WorkDetailReq + (*WorkLogInfo)(nil), // 26: Cast.WorkLogInfo + (*WorkDetailResp)(nil), // 27: Cast.WorkDetailResp + (*UpdateStatusReq)(nil), // 28: Cast.UpdateStatusReq + (*MediaAccountsReq)(nil), // 29: Cast.MediaAccountsReq + (*MediaAccountsResp)(nil), // 30: Cast.MediaAccountsResp + (*MediaWorksReq)(nil), // 31: Cast.MediaWorksReq + (*MediaWorksResp)(nil), // 32: Cast.MediaWorksResp + (*PublishReq)(nil), // 33: Cast.PublishReq + (*PublishResp)(nil), // 34: Cast.PublishResp + (*RePublishReq)(nil), // 35: Cast.RePublishReq + (*RePublishResp)(nil), // 36: Cast.RePublishResp + (*DelWorkReq)(nil), // 37: Cast.DelWorkReq + (*WorkInfoReq)(nil), // 38: Cast.WorkInfoReq + (*WorkInfoResp)(nil), // 39: Cast.WorkInfoResp + (*ArtistInfoReq)(nil), // 40: Cast.ArtistInfoReq + (*ArtistInfoResp)(nil), // 41: Cast.ArtistInfoResp + (*ImportWorkBatchReq)(nil), // 42: Cast.ImportWorkBatchReq + (*ImportWorkBatchResp)(nil), // 43: Cast.ImportWorkBatchResp + (*PlatformInfo)(nil), // 44: Cast.PlatformInfo + (*UpdateWorkPlatformInfoReq)(nil), // 45: Cast.UpdateWorkPlatformInfoReq + (*UpdateWorkPlatformInfoResp)(nil), // 46: Cast.UpdateWorkPlatformInfoResp + (*UpdateWorkPublishLogReq)(nil), // 47: Cast.UpdateWorkPublishLogReq + (*RefreshWorkListReq)(nil), // 48: Cast.RefreshWorkListReq + (*RefreshWorkListResp)(nil), // 49: Cast.RefreshWorkListResp + (*OAuthAccountReq)(nil), // 50: Cast.OAuthAccountReq + (*OAuthAccountResp)(nil), // 51: Cast.OAuthAccountResp + (*OAuthAccountV2Req)(nil), // 52: Cast.OAuthAccountV2Req + (*OAuthAccountV2Resp)(nil), // 53: Cast.OAuthAccountV2Resp + (*OAuthYoutubeTokenReq)(nil), // 54: Cast.OAuthYoutubeTokenReq + (*OAuthYoutubeTokenResp)(nil), // 55: Cast.OAuthYoutubeTokenResp + (*OAuthCodeToTokenReq)(nil), // 56: Cast.OAuthCodeToTokenReq + (*OAuthCodeToTokenResp)(nil), // 57: Cast.OAuthCodeToTokenResp + (*UpdateOAuthReq)(nil), // 58: Cast.UpdateOAuthReq + (*RefreshTokenReq)(nil), // 59: Cast.RefreshTokenReq + (*RefreshTokenResp)(nil), // 60: Cast.RefreshTokenResp + (*PublishMediaInfoReq)(nil), // 61: Cast.PublishMediaInfoReq + (*PublishMediaInfoResp)(nil), // 62: Cast.PublishMediaInfoResp + (*UpdateVideoScriptReq)(nil), // 63: Cast.UpdateVideoScriptReq + (*UpdateVideoScriptResp)(nil), // 64: Cast.UpdateVideoScriptResp + (*GetVideoScriptReq)(nil), // 65: Cast.GetVideoScriptReq + (*GetVideoScriptResp)(nil), // 66: Cast.GetVideoScriptResp + (*ListVideoScriptsReq)(nil), // 67: Cast.ListVideoScriptsReq + (*VideoScriptInfo)(nil), // 68: Cast.VideoScriptInfo + (*ListVideoScriptsResp)(nil), // 69: Cast.ListVideoScriptsResp + (*DeleteVideoScriptReq)(nil), // 70: Cast.DeleteVideoScriptReq + (*UpdateVideoScriptBatchReq)(nil), // 71: Cast.UpdateVideoScriptBatchReq + (*UpdateVideoScriptBatchResp)(nil), // 72: Cast.UpdateVideoScriptBatchResp + (*UpdateScriptStatusReq)(nil), // 73: Cast.UpdateScriptStatusReq + (*SetLayoutReq)(nil), // 74: Cast.SetLayoutReq + (*GetLayoutReq)(nil), // 75: Cast.GetLayoutReq + (*GetLayoutResp)(nil), // 76: Cast.GetLayoutResp + (*UpdatePromptReq)(nil), // 77: Cast.UpdatePromptReq + (*DeletePromptReq)(nil), // 78: Cast.DeletePromptReq + (*GetPromptReq)(nil), // 79: Cast.GetPromptReq + (*GetPromptResp)(nil), // 80: Cast.GetPromptResp + (*ListPromptsReq)(nil), // 81: Cast.ListPromptsReq + (*PromptInfo)(nil), // 82: Cast.PromptInfo + (*ListPromptsResp)(nil), // 83: Cast.ListPromptsResp + (*UpdatePromptBatchReq)(nil), // 84: Cast.UpdatePromptBatchReq + (*UpdatePromptBatchResp)(nil), // 85: Cast.UpdatePromptBatchResp + (*ArtistInfo)(nil), // 86: Cast.ArtistInfo + (*UpdateArtistReq)(nil), // 87: Cast.UpdateArtistReq + (*UpdateArtistResp)(nil), // 88: Cast.UpdateArtistResp + (*GetArtistReq)(nil), // 89: Cast.GetArtistReq + (*GetArtistResp)(nil), // 90: Cast.GetArtistResp + (*CreateWorkAnalysisReq)(nil), // 91: Cast.CreateWorkAnalysisReq + (*CreateWorkAnalysisResp)(nil), // 92: Cast.CreateWorkAnalysisResp + (*UpdateWorkAnalysisReq)(nil), // 93: Cast.UpdateWorkAnalysisReq + (*UpdateWorkAnalysisStatusReq)(nil), // 94: Cast.UpdateWorkAnalysisStatusReq + (*WorkAnalysisLogInfo)(nil), // 95: Cast.WorkAnalysisLogInfo + (*WorkAnalysisFansSeries)(nil), // 96: Cast.WorkAnalysisFansSeries + (*WorkAnalysisViewsSeries)(nil), // 97: Cast.WorkAnalysisViewsSeries + (*WorkAnalysisLikesSeries)(nil), // 98: Cast.WorkAnalysisLikesSeries + (*WorkAnalysisCommentsSeries)(nil), // 99: Cast.WorkAnalysisCommentsSeries + (*WorkAnalysisSharesSeries)(nil), // 100: Cast.WorkAnalysisSharesSeries + (*WorkAnalysisTopCities)(nil), // 101: Cast.WorkAnalysisTopCities + (*WorkAnalysisMostActiveDay)(nil), // 102: Cast.WorkAnalysisMostActiveDay + (*WorkAnalysisBestPostTime)(nil), // 103: Cast.WorkAnalysisBestPostTime + (*WorkAnalysisExtra)(nil), // 104: Cast.WorkAnalysisExtra + (*GetWorkAnalysisDetailReq)(nil), // 105: Cast.GetWorkAnalysisDetailReq + (*GetLatestWorkAnalysisReq)(nil), // 106: Cast.GetLatestWorkAnalysisReq + (*GetWorkAnalysisResp)(nil), // 107: Cast.GetWorkAnalysisResp + (*GetWorkAnalysisDetailResp)(nil), // 108: Cast.GetWorkAnalysisDetailResp + (*ListWorkAnalysisReq)(nil), // 109: Cast.ListWorkAnalysisReq + (*WorkAnalysisInfo)(nil), // 110: Cast.WorkAnalysisInfo + (*ListWorkAnalysisResp)(nil), // 111: Cast.ListWorkAnalysisResp + (*DeleteWorkAnalysisReq)(nil), // 112: Cast.DeleteWorkAnalysisReq + (*ArtistDataListReq)(nil), // 113: Cast.ArtistDataListReq + (*ArtistDataRespItem)(nil), // 114: Cast.ArtistDataRespItem + (*ArtistDataListResp)(nil), // 115: Cast.ArtistDataListResp + (*MediaDataListReq)(nil), // 116: Cast.MediaDataListReq + (*MediaDataListItem)(nil), // 117: Cast.MediaDataListItem + (*MediaDataListResp)(nil), // 118: Cast.MediaDataListResp + (*DataOverviewReq)(nil), // 119: Cast.DataOverviewReq + (*DataOverviewResp)(nil), // 120: Cast.DataOverviewResp + (*ArtistMetricsSeriesReq)(nil), // 121: Cast.ArtistMetricsSeriesReq + (*ArtistMetricsSeriesResp)(nil), // 122: Cast.ArtistMetricsSeriesResp + (*ArtistMetricsDailyWindowReq)(nil), // 123: Cast.ArtistMetricsDailyWindowReq + (*SimplePoint)(nil), // 124: Cast.SimplePoint + (*BestPostTimePoint)(nil), // 125: Cast.BestPostTimePoint + (*MostActiveDayPoint)(nil), // 126: Cast.MostActiveDayPoint + (*ArtistMetricsDailyWindowResp)(nil), // 127: Cast.ArtistMetricsDailyWindowResp + (*TobeConfirmedListReq)(nil), // 128: Cast.TobeConfirmedListReq + (*TobeConfirmedItem)(nil), // 129: Cast.TobeConfirmedItem + (*TobeConfirmedListResp)(nil), // 130: Cast.TobeConfirmedListResp + (*UpdateWorkAnalysisApprovalIDReq)(nil), // 131: Cast.UpdateWorkAnalysisApprovalIDReq + (*MediaMetricsDailyItem)(nil), // 132: Cast.MediaMetricsDailyItem + (*UpsertMediaMetricsDailyBatchReq)(nil), // 133: Cast.UpsertMediaMetricsDailyBatchReq + (*UpsertMediaMetricsDailyBatchResp)(nil), // 134: Cast.UpsertMediaMetricsDailyBatchResp + (*WorkMetricsDailyItem)(nil), // 135: Cast.WorkMetricsDailyItem + (*UpsertWorkMetricsDailyBatchReq)(nil), // 136: Cast.UpsertWorkMetricsDailyBatchReq + (*UpsertWorkMetricsDailyBatchResp)(nil), // 137: Cast.UpsertWorkMetricsDailyBatchResp + (*GetArtistAyrShareInfoReq)(nil), // 138: Cast.GetArtistAyrShareInfoReq + (*ArtistAyrShareInfo)(nil), // 139: Cast.ArtistAyrShareInfo + (*GetArtistAyrShareInfoResp)(nil), // 140: Cast.GetArtistAyrShareInfoResp + (*ListWorkPlatformInfoReq)(nil), // 141: Cast.ListWorkPlatformInfoReq + (*WorkPlatformInfo)(nil), // 142: Cast.WorkPlatformInfo + (*ListWorkPlatformInfoResp)(nil), // 143: Cast.ListWorkPlatformInfoResp + (*WorkListResp_Info)(nil), // 144: Cast.WorkListResp.Info + nil, // 145: Cast.WorkDetailResp.MediaAccDataEntry + (*MediaAccountsResp_Info)(nil), // 146: Cast.MediaAccountsResp.Info + (*MediaWorksResp_Info)(nil), // 147: Cast.MediaWorksResp.Info + (*PublishResp_Info)(nil), // 148: Cast.PublishResp.Info + (*RefreshWorkListResp_Info)(nil), // 149: Cast.RefreshWorkListResp.Info + (*RefreshWorkListResp_Info_PlatformInfo)(nil), // 150: Cast.RefreshWorkListResp.Info.PlatformInfo + (*UpdateOAuthReq_Info)(nil), // 151: Cast.UpdateOAuthReq.Info + (*emptypb.Empty)(nil), // 152: google.protobuf.Empty } var file_pb_fiee_cast_proto_depIdxs = []int32{ 0, // 0: Cast.MediaUserListReq.platformID:type_name -> Cast.PlatformIDENUM @@ -13590,220 +15347,227 @@ var file_pb_fiee_cast_proto_depIdxs = []int32{ 16, // 7: Cast.UpdateWorkImageReq.publishConfig2:type_name -> Cast.PublishConfig 16, // 8: Cast.UpdateWorkImageReq.publishConfig3:type_name -> Cast.PublishConfig 16, // 9: Cast.UpdateWorkImageReq.publishConfig4:type_name -> Cast.PublishConfig - 0, // 10: Cast.UpdateWorkVideoReq.platformIDs:type_name -> Cast.PlatformIDENUM - 16, // 11: Cast.UpdateWorkVideoReq.publishConfig1:type_name -> Cast.PublishConfig - 16, // 12: Cast.UpdateWorkVideoReq.publishConfig2:type_name -> Cast.PublishConfig - 16, // 13: Cast.UpdateWorkVideoReq.publishConfig3:type_name -> Cast.PublishConfig - 16, // 14: Cast.UpdateWorkVideoReq.publishConfig4:type_name -> Cast.PublishConfig - 3, // 15: Cast.UpdateWorkVideoReq.autoPublish:type_name -> Cast.AutoPublishENUM - 0, // 16: Cast.MediaInfoReq.platformID:type_name -> Cast.PlatformIDENUM - 7, // 17: Cast.MediaInfoResp.info:type_name -> Cast.MediaUserInfo - 142, // 18: Cast.WorkListResp.data:type_name -> Cast.WorkListResp.Info - 16, // 19: Cast.WorkDetailResp.publishConfig1:type_name -> Cast.PublishConfig - 16, // 20: Cast.WorkDetailResp.publishConfig2:type_name -> Cast.PublishConfig - 16, // 21: Cast.WorkDetailResp.publishConfig3:type_name -> Cast.PublishConfig - 16, // 22: Cast.WorkDetailResp.publishConfig4:type_name -> Cast.PublishConfig - 24, // 23: Cast.WorkDetailResp.WorkLogData:type_name -> Cast.WorkLogInfo - 143, // 24: Cast.WorkDetailResp.mediaAccData:type_name -> Cast.WorkDetailResp.MediaAccDataEntry - 2, // 25: Cast.UpdateStatusReq.workAction:type_name -> Cast.WorkActionENUM - 3, // 26: Cast.UpdateStatusReq.autoPublish:type_name -> Cast.AutoPublishENUM - 144, // 27: Cast.MediaAccountsResp.data:type_name -> Cast.MediaAccountsResp.Info - 145, // 28: Cast.MediaWorksResp.data:type_name -> Cast.MediaWorksResp.Info - 146, // 29: Cast.PublishResp.data:type_name -> Cast.PublishResp.Info - 14, // 30: Cast.ImportWorkBatchReq.imageWorks:type_name -> Cast.UpdateWorkImageReq - 14, // 31: Cast.ImportWorkBatchResp.imageWorks:type_name -> Cast.UpdateWorkImageReq - 4, // 32: Cast.PlatformInfo.publishStatus:type_name -> Cast.PublishStatusENUM - 42, // 33: Cast.UpdateWorkPlatformInfoReq.PlatformInfoData:type_name -> Cast.PlatformInfo - 0, // 34: Cast.UpdateWorkPublishLogReq.platformID:type_name -> Cast.PlatformIDENUM - 147, // 35: Cast.RefreshWorkListResp.Data:type_name -> Cast.RefreshWorkListResp.Info - 0, // 36: Cast.OAuthCodeToTokenReq.platformID:type_name -> Cast.PlatformIDENUM - 149, // 37: Cast.UpdateOAuthReq.Data:type_name -> Cast.UpdateOAuthReq.Info - 0, // 38: Cast.RefreshTokenReq.platformID:type_name -> Cast.PlatformIDENUM - 66, // 39: Cast.ListVideoScriptsResp.data:type_name -> Cast.VideoScriptInfo - 66, // 40: Cast.UpdateVideoScriptBatchReq.data:type_name -> Cast.VideoScriptInfo - 66, // 41: Cast.UpdateVideoScriptBatchResp.data:type_name -> Cast.VideoScriptInfo - 2, // 42: Cast.UpdateScriptStatusReq.workAction:type_name -> Cast.WorkActionENUM - 5, // 43: Cast.UpdatePromptReq.category:type_name -> Cast.CategoryENUM - 5, // 44: Cast.GetPromptResp.category:type_name -> Cast.CategoryENUM - 5, // 45: Cast.ListPromptsReq.category:type_name -> Cast.CategoryENUM - 5, // 46: Cast.PromptInfo.category:type_name -> Cast.CategoryENUM - 80, // 47: Cast.ListPromptsResp.data:type_name -> Cast.PromptInfo - 80, // 48: Cast.UpdatePromptBatchReq.data:type_name -> Cast.PromptInfo - 80, // 49: Cast.UpdatePromptBatchResp.data:type_name -> Cast.PromptInfo - 84, // 50: Cast.UpdateArtistReq.artistInfo:type_name -> Cast.ArtistInfo - 84, // 51: Cast.GetArtistResp.artistInfo:type_name -> Cast.ArtistInfo - 2, // 52: Cast.UpdateWorkAnalysisStatusReq.workAction:type_name -> Cast.WorkActionENUM - 94, // 53: Cast.GetWorkAnalysisResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries - 95, // 54: Cast.GetWorkAnalysisResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries - 96, // 55: Cast.GetWorkAnalysisResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries - 97, // 56: Cast.GetWorkAnalysisResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries - 98, // 57: Cast.GetWorkAnalysisResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries - 99, // 58: Cast.GetWorkAnalysisResp.topCitiesSeries:type_name -> Cast.WorkAnalysisTopCities - 100, // 59: Cast.GetWorkAnalysisResp.mostActiveDaySeries:type_name -> Cast.WorkAnalysisMostActiveDay - 101, // 60: Cast.GetWorkAnalysisResp.bestPostTimeSeries:type_name -> Cast.WorkAnalysisBestPostTime - 93, // 61: Cast.GetWorkAnalysisDetailResp.WorkAnalysisLogData:type_name -> Cast.WorkAnalysisLogInfo - 94, // 62: Cast.GetWorkAnalysisDetailResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries - 95, // 63: Cast.GetWorkAnalysisDetailResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries - 96, // 64: Cast.GetWorkAnalysisDetailResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries - 97, // 65: Cast.GetWorkAnalysisDetailResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries - 98, // 66: Cast.GetWorkAnalysisDetailResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries - 99, // 67: Cast.GetWorkAnalysisDetailResp.topCitiesSeries:type_name -> Cast.WorkAnalysisTopCities - 100, // 68: Cast.GetWorkAnalysisDetailResp.mostActiveDaySeries:type_name -> Cast.WorkAnalysisMostActiveDay - 101, // 69: Cast.GetWorkAnalysisDetailResp.bestPostTimeSeries:type_name -> Cast.WorkAnalysisBestPostTime - 102, // 70: Cast.GetWorkAnalysisDetailResp.extra:type_name -> Cast.WorkAnalysisExtra - 108, // 71: Cast.ListWorkAnalysisResp.data:type_name -> Cast.WorkAnalysisInfo - 112, // 72: Cast.ArtistDataListResp.data:type_name -> Cast.ArtistDataRespItem - 115, // 73: Cast.MediaDataListResp.data:type_name -> Cast.MediaDataListItem - 94, // 74: Cast.ArtistMetricsSeriesResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries - 95, // 75: Cast.ArtistMetricsSeriesResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries - 96, // 76: Cast.ArtistMetricsSeriesResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries - 97, // 77: Cast.ArtistMetricsSeriesResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries - 98, // 78: Cast.ArtistMetricsSeriesResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries - 101, // 79: Cast.ArtistMetricsSeriesResp.bestPostTime:type_name -> Cast.WorkAnalysisBestPostTime - 100, // 80: Cast.ArtistMetricsSeriesResp.mostActiveDay:type_name -> Cast.WorkAnalysisMostActiveDay - 122, // 81: Cast.ArtistMetricsDailyWindowResp.fans:type_name -> Cast.SimplePoint - 122, // 82: Cast.ArtistMetricsDailyWindowResp.views:type_name -> Cast.SimplePoint - 122, // 83: Cast.ArtistMetricsDailyWindowResp.likes:type_name -> Cast.SimplePoint - 122, // 84: Cast.ArtistMetricsDailyWindowResp.comments:type_name -> Cast.SimplePoint - 122, // 85: Cast.ArtistMetricsDailyWindowResp.shares:type_name -> Cast.SimplePoint - 123, // 86: Cast.ArtistMetricsDailyWindowResp.bestPostTime:type_name -> Cast.BestPostTimePoint - 124, // 87: Cast.ArtistMetricsDailyWindowResp.mostActiveDay:type_name -> Cast.MostActiveDayPoint - 127, // 88: Cast.TobeConfirmedListResp.data:type_name -> Cast.TobeConfirmedItem - 130, // 89: Cast.UpsertMediaMetricsDailyBatchReq.data:type_name -> Cast.MediaMetricsDailyItem - 133, // 90: Cast.UpsertWorkMetricsDailyBatchReq.data:type_name -> Cast.WorkMetricsDailyItem - 137, // 91: Cast.GetArtistAyrShareInfoResp.data:type_name -> Cast.ArtistAyrShareInfo - 140, // 92: Cast.ListWorkPlatformInfoResp.data:type_name -> Cast.WorkPlatformInfo - 7, // 93: Cast.WorkDetailResp.MediaAccDataEntry.value:type_name -> Cast.MediaUserInfo - 148, // 94: Cast.RefreshWorkListResp.Info.PlatformInfoData:type_name -> Cast.RefreshWorkListResp.Info.PlatformInfo - 0, // 95: Cast.RefreshWorkListResp.Info.PlatformInfo.platformID:type_name -> Cast.PlatformIDENUM - 0, // 96: Cast.UpdateOAuthReq.Info.platformID:type_name -> Cast.PlatformIDENUM - 6, // 97: Cast.Cast.MediaUserList:input_type -> Cast.MediaUserListReq - 9, // 98: Cast.Cast.UpdateMediaAccount:input_type -> Cast.UpdateMediaAccountReq - 11, // 99: Cast.Cast.UnbindManager:input_type -> Cast.UnbindManagerReq - 13, // 100: Cast.Cast.BindManager:input_type -> Cast.BindManagerReq - 14, // 101: Cast.Cast.UpdateWorkImage:input_type -> Cast.UpdateWorkImageReq - 17, // 102: Cast.Cast.UpdateWorkVideo:input_type -> Cast.UpdateWorkVideoReq - 19, // 103: Cast.Cast.MediaInfo:input_type -> Cast.MediaInfoReq - 21, // 104: Cast.Cast.WorkList:input_type -> Cast.WorkListReq - 23, // 105: Cast.Cast.WorkDetail:input_type -> Cast.WorkDetailReq - 26, // 106: Cast.Cast.UpdateStatus:input_type -> Cast.UpdateStatusReq - 27, // 107: Cast.Cast.MediaAccounts:input_type -> Cast.MediaAccountsReq - 29, // 108: Cast.Cast.MediaWorks:input_type -> Cast.MediaWorksReq - 31, // 109: Cast.Cast.Publish:input_type -> Cast.PublishReq - 33, // 110: Cast.Cast.RePublish:input_type -> Cast.RePublishReq - 35, // 111: Cast.Cast.DelWork:input_type -> Cast.DelWorkReq - 36, // 112: Cast.Cast.WorkInfo:input_type -> Cast.WorkInfoReq - 38, // 113: Cast.Cast.ArtistInfo:input_type -> Cast.ArtistInfoReq - 40, // 114: Cast.Cast.ImportWorkBatch:input_type -> Cast.ImportWorkBatchReq - 43, // 115: Cast.Cast.UpdateWorkPlatformInfo:input_type -> Cast.UpdateWorkPlatformInfoReq - 45, // 116: Cast.Cast.UpdateWorkPublishLog:input_type -> Cast.UpdateWorkPublishLogReq - 46, // 117: Cast.Cast.RefreshWorkList:input_type -> Cast.RefreshWorkListReq - 48, // 118: Cast.Cast.OAuthAccount:input_type -> Cast.OAuthAccountReq - 50, // 119: Cast.Cast.OAuthAccountV2:input_type -> Cast.OAuthAccountV2Req - 54, // 120: Cast.Cast.OAuthCodeToToken:input_type -> Cast.OAuthCodeToTokenReq - 56, // 121: Cast.Cast.UpdateOAuth:input_type -> Cast.UpdateOAuthReq - 57, // 122: Cast.Cast.RefreshToken:input_type -> Cast.RefreshTokenReq - 59, // 123: Cast.Cast.PublishMediaInfo:input_type -> Cast.PublishMediaInfoReq - 150, // 124: Cast.Cast.Test:input_type -> google.protobuf.Empty - 61, // 125: Cast.Cast.UpdateVideoScript:input_type -> Cast.UpdateVideoScriptReq - 63, // 126: Cast.Cast.GetVideoScript:input_type -> Cast.GetVideoScriptReq - 65, // 127: Cast.Cast.ListVideoScripts:input_type -> Cast.ListVideoScriptsReq - 68, // 128: Cast.Cast.DeleteVideoScript:input_type -> Cast.DeleteVideoScriptReq - 69, // 129: Cast.Cast.UpdateVideoScriptBatch:input_type -> Cast.UpdateVideoScriptBatchReq - 71, // 130: Cast.Cast.UpdateScriptStatus:input_type -> Cast.UpdateScriptStatusReq - 73, // 131: Cast.Cast.GetLayout:input_type -> Cast.GetLayoutReq - 72, // 132: Cast.Cast.SetLayout:input_type -> Cast.SetLayoutReq - 75, // 133: Cast.Cast.UpdatePrompt:input_type -> Cast.UpdatePromptReq - 76, // 134: Cast.Cast.DeletePrompt:input_type -> Cast.DeletePromptReq - 77, // 135: Cast.Cast.GetPrompt:input_type -> Cast.GetPromptReq - 79, // 136: Cast.Cast.ListPrompts:input_type -> Cast.ListPromptsReq - 82, // 137: Cast.Cast.UpdatePromptBatch:input_type -> Cast.UpdatePromptBatchReq - 85, // 138: Cast.Cast.UpdateArtist:input_type -> Cast.UpdateArtistReq - 87, // 139: Cast.Cast.GetArtist:input_type -> Cast.GetArtistReq - 89, // 140: Cast.Cast.CreateWorkAnalysis:input_type -> Cast.CreateWorkAnalysisReq - 91, // 141: Cast.Cast.UpdateWorkAnalysis:input_type -> Cast.UpdateWorkAnalysisReq - 92, // 142: Cast.Cast.UpdateWorkAnalysisStatus:input_type -> Cast.UpdateWorkAnalysisStatusReq - 103, // 143: Cast.Cast.GetWorkAnalysis:input_type -> Cast.GetWorkAnalysisDetailReq - 104, // 144: Cast.Cast.GetLatestWorkAnalysis:input_type -> Cast.GetLatestWorkAnalysisReq - 107, // 145: Cast.Cast.ListWorkAnalysis:input_type -> Cast.ListWorkAnalysisReq - 110, // 146: Cast.Cast.DeleteWorkAnalysis:input_type -> Cast.DeleteWorkAnalysisReq - 129, // 147: Cast.Cast.UpdateWorkAnalysisApprovalID:input_type -> Cast.UpdateWorkAnalysisApprovalIDReq - 111, // 148: Cast.Cast.ArtistDataList:input_type -> Cast.ArtistDataListReq - 114, // 149: Cast.Cast.MediaDataList:input_type -> Cast.MediaDataListReq - 117, // 150: Cast.Cast.DataOverview:input_type -> Cast.DataOverviewReq - 119, // 151: Cast.Cast.ArtistMetricsSeries:input_type -> Cast.ArtistMetricsSeriesReq - 121, // 152: Cast.Cast.ArtistMetricsDailyWindow:input_type -> Cast.ArtistMetricsDailyWindowReq - 126, // 153: Cast.Cast.TobeConfirmedList:input_type -> Cast.TobeConfirmedListReq - 131, // 154: Cast.Cast.UpsertMediaMetricsDailyBatch:input_type -> Cast.UpsertMediaMetricsDailyBatchReq - 134, // 155: Cast.Cast.UpsertWorkMetricsDailyBatch:input_type -> Cast.UpsertWorkMetricsDailyBatchReq - 136, // 156: Cast.Cast.GetArtistAyrShareInfo:input_type -> Cast.GetArtistAyrShareInfoReq - 139, // 157: Cast.Cast.ListWorkPlatformInfo:input_type -> Cast.ListWorkPlatformInfoReq - 8, // 158: Cast.Cast.MediaUserList:output_type -> Cast.MediaUserListResp - 10, // 159: Cast.Cast.UpdateMediaAccount:output_type -> Cast.UpdateMediaAccountResp - 12, // 160: Cast.Cast.UnbindManager:output_type -> Cast.UnbindManagerResp - 150, // 161: Cast.Cast.BindManager:output_type -> google.protobuf.Empty - 15, // 162: Cast.Cast.UpdateWorkImage:output_type -> Cast.UpdateWorkImageResp - 18, // 163: Cast.Cast.UpdateWorkVideo:output_type -> Cast.UpdateWorkVideoResp - 20, // 164: Cast.Cast.MediaInfo:output_type -> Cast.MediaInfoResp - 22, // 165: Cast.Cast.WorkList:output_type -> Cast.WorkListResp - 25, // 166: Cast.Cast.WorkDetail:output_type -> Cast.WorkDetailResp - 150, // 167: Cast.Cast.UpdateStatus:output_type -> google.protobuf.Empty - 28, // 168: Cast.Cast.MediaAccounts:output_type -> Cast.MediaAccountsResp - 30, // 169: Cast.Cast.MediaWorks:output_type -> Cast.MediaWorksResp - 32, // 170: Cast.Cast.Publish:output_type -> Cast.PublishResp - 34, // 171: Cast.Cast.RePublish:output_type -> Cast.RePublishResp - 150, // 172: Cast.Cast.DelWork:output_type -> google.protobuf.Empty - 37, // 173: Cast.Cast.WorkInfo:output_type -> Cast.WorkInfoResp - 39, // 174: Cast.Cast.ArtistInfo:output_type -> Cast.ArtistInfoResp - 41, // 175: Cast.Cast.ImportWorkBatch:output_type -> Cast.ImportWorkBatchResp - 44, // 176: Cast.Cast.UpdateWorkPlatformInfo:output_type -> Cast.UpdateWorkPlatformInfoResp - 150, // 177: Cast.Cast.UpdateWorkPublishLog:output_type -> google.protobuf.Empty - 47, // 178: Cast.Cast.RefreshWorkList:output_type -> Cast.RefreshWorkListResp - 49, // 179: Cast.Cast.OAuthAccount:output_type -> Cast.OAuthAccountResp - 51, // 180: Cast.Cast.OAuthAccountV2:output_type -> Cast.OAuthAccountV2Resp - 55, // 181: Cast.Cast.OAuthCodeToToken:output_type -> Cast.OAuthCodeToTokenResp - 150, // 182: Cast.Cast.UpdateOAuth:output_type -> google.protobuf.Empty - 58, // 183: Cast.Cast.RefreshToken:output_type -> Cast.RefreshTokenResp - 60, // 184: Cast.Cast.PublishMediaInfo:output_type -> Cast.PublishMediaInfoResp - 150, // 185: Cast.Cast.Test:output_type -> google.protobuf.Empty - 62, // 186: Cast.Cast.UpdateVideoScript:output_type -> Cast.UpdateVideoScriptResp - 64, // 187: Cast.Cast.GetVideoScript:output_type -> Cast.GetVideoScriptResp - 67, // 188: Cast.Cast.ListVideoScripts:output_type -> Cast.ListVideoScriptsResp - 150, // 189: Cast.Cast.DeleteVideoScript:output_type -> google.protobuf.Empty - 70, // 190: Cast.Cast.UpdateVideoScriptBatch:output_type -> Cast.UpdateVideoScriptBatchResp - 150, // 191: Cast.Cast.UpdateScriptStatus:output_type -> google.protobuf.Empty - 74, // 192: Cast.Cast.GetLayout:output_type -> Cast.GetLayoutResp - 150, // 193: Cast.Cast.SetLayout:output_type -> google.protobuf.Empty - 150, // 194: Cast.Cast.UpdatePrompt:output_type -> google.protobuf.Empty - 150, // 195: Cast.Cast.DeletePrompt:output_type -> google.protobuf.Empty - 78, // 196: Cast.Cast.GetPrompt:output_type -> Cast.GetPromptResp - 81, // 197: Cast.Cast.ListPrompts:output_type -> Cast.ListPromptsResp - 83, // 198: Cast.Cast.UpdatePromptBatch:output_type -> Cast.UpdatePromptBatchResp - 86, // 199: Cast.Cast.UpdateArtist:output_type -> Cast.UpdateArtistResp - 88, // 200: Cast.Cast.GetArtist:output_type -> Cast.GetArtistResp - 90, // 201: Cast.Cast.CreateWorkAnalysis:output_type -> Cast.CreateWorkAnalysisResp - 150, // 202: Cast.Cast.UpdateWorkAnalysis:output_type -> google.protobuf.Empty - 150, // 203: Cast.Cast.UpdateWorkAnalysisStatus:output_type -> google.protobuf.Empty - 106, // 204: Cast.Cast.GetWorkAnalysis:output_type -> Cast.GetWorkAnalysisDetailResp - 105, // 205: Cast.Cast.GetLatestWorkAnalysis:output_type -> Cast.GetWorkAnalysisResp - 109, // 206: Cast.Cast.ListWorkAnalysis:output_type -> Cast.ListWorkAnalysisResp - 150, // 207: Cast.Cast.DeleteWorkAnalysis:output_type -> google.protobuf.Empty - 150, // 208: Cast.Cast.UpdateWorkAnalysisApprovalID:output_type -> google.protobuf.Empty - 113, // 209: Cast.Cast.ArtistDataList:output_type -> Cast.ArtistDataListResp - 116, // 210: Cast.Cast.MediaDataList:output_type -> Cast.MediaDataListResp - 118, // 211: Cast.Cast.DataOverview:output_type -> Cast.DataOverviewResp - 120, // 212: Cast.Cast.ArtistMetricsSeries:output_type -> Cast.ArtistMetricsSeriesResp - 125, // 213: Cast.Cast.ArtistMetricsDailyWindow:output_type -> Cast.ArtistMetricsDailyWindowResp - 128, // 214: Cast.Cast.TobeConfirmedList:output_type -> Cast.TobeConfirmedListResp - 132, // 215: Cast.Cast.UpsertMediaMetricsDailyBatch:output_type -> Cast.UpsertMediaMetricsDailyBatchResp - 135, // 216: Cast.Cast.UpsertWorkMetricsDailyBatch:output_type -> Cast.UpsertWorkMetricsDailyBatchResp - 138, // 217: Cast.Cast.GetArtistAyrShareInfo:output_type -> Cast.GetArtistAyrShareInfoResp - 141, // 218: Cast.Cast.ListWorkPlatformInfo:output_type -> Cast.ListWorkPlatformInfoResp - 158, // [158:219] is the sub-list for method output_type - 97, // [97:158] is the sub-list for method input_type - 97, // [97:97] is the sub-list for extension type_name - 97, // [97:97] is the sub-list for extension extendee - 0, // [0:97] is the sub-list for field type_name + 16, // 10: Cast.UpdateWorkImageReq.publishConfig5:type_name -> Cast.PublishConfig + 0, // 11: Cast.UpdateWorkVideoReq.platformIDs:type_name -> Cast.PlatformIDENUM + 16, // 12: Cast.UpdateWorkVideoReq.publishConfig1:type_name -> Cast.PublishConfig + 16, // 13: Cast.UpdateWorkVideoReq.publishConfig2:type_name -> Cast.PublishConfig + 16, // 14: Cast.UpdateWorkVideoReq.publishConfig3:type_name -> Cast.PublishConfig + 16, // 15: Cast.UpdateWorkVideoReq.publishConfig4:type_name -> Cast.PublishConfig + 3, // 16: Cast.UpdateWorkVideoReq.autoPublish:type_name -> Cast.AutoPublishENUM + 16, // 17: Cast.UpdateWorkVideoReq.publishConfig5:type_name -> Cast.PublishConfig + 0, // 18: Cast.MediaInfoReq.platformID:type_name -> Cast.PlatformIDENUM + 7, // 19: Cast.MediaInfoResp.info:type_name -> Cast.MediaUserInfo + 0, // 20: Cast.MediaInfoByPlatformReq.platformID:type_name -> Cast.PlatformIDENUM + 7, // 21: Cast.MediaInfoByPlatformResp.info:type_name -> Cast.MediaUserInfo + 144, // 22: Cast.WorkListResp.data:type_name -> Cast.WorkListResp.Info + 16, // 23: Cast.WorkDetailResp.publishConfig1:type_name -> Cast.PublishConfig + 16, // 24: Cast.WorkDetailResp.publishConfig2:type_name -> Cast.PublishConfig + 16, // 25: Cast.WorkDetailResp.publishConfig3:type_name -> Cast.PublishConfig + 16, // 26: Cast.WorkDetailResp.publishConfig4:type_name -> Cast.PublishConfig + 26, // 27: Cast.WorkDetailResp.WorkLogData:type_name -> Cast.WorkLogInfo + 145, // 28: Cast.WorkDetailResp.mediaAccData:type_name -> Cast.WorkDetailResp.MediaAccDataEntry + 16, // 29: Cast.WorkDetailResp.publishConfig5:type_name -> Cast.PublishConfig + 2, // 30: Cast.UpdateStatusReq.workAction:type_name -> Cast.WorkActionENUM + 3, // 31: Cast.UpdateStatusReq.autoPublish:type_name -> Cast.AutoPublishENUM + 146, // 32: Cast.MediaAccountsResp.data:type_name -> Cast.MediaAccountsResp.Info + 147, // 33: Cast.MediaWorksResp.data:type_name -> Cast.MediaWorksResp.Info + 148, // 34: Cast.PublishResp.data:type_name -> Cast.PublishResp.Info + 14, // 35: Cast.ImportWorkBatchReq.imageWorks:type_name -> Cast.UpdateWorkImageReq + 14, // 36: Cast.ImportWorkBatchResp.imageWorks:type_name -> Cast.UpdateWorkImageReq + 4, // 37: Cast.PlatformInfo.publishStatus:type_name -> Cast.PublishStatusENUM + 44, // 38: Cast.UpdateWorkPlatformInfoReq.PlatformInfoData:type_name -> Cast.PlatformInfo + 0, // 39: Cast.UpdateWorkPublishLogReq.platformID:type_name -> Cast.PlatformIDENUM + 149, // 40: Cast.RefreshWorkListResp.Data:type_name -> Cast.RefreshWorkListResp.Info + 0, // 41: Cast.OAuthCodeToTokenReq.platformID:type_name -> Cast.PlatformIDENUM + 151, // 42: Cast.UpdateOAuthReq.Data:type_name -> Cast.UpdateOAuthReq.Info + 0, // 43: Cast.RefreshTokenReq.platformID:type_name -> Cast.PlatformIDENUM + 68, // 44: Cast.ListVideoScriptsResp.data:type_name -> Cast.VideoScriptInfo + 68, // 45: Cast.UpdateVideoScriptBatchReq.data:type_name -> Cast.VideoScriptInfo + 68, // 46: Cast.UpdateVideoScriptBatchResp.data:type_name -> Cast.VideoScriptInfo + 2, // 47: Cast.UpdateScriptStatusReq.workAction:type_name -> Cast.WorkActionENUM + 5, // 48: Cast.UpdatePromptReq.category:type_name -> Cast.CategoryENUM + 5, // 49: Cast.GetPromptResp.category:type_name -> Cast.CategoryENUM + 5, // 50: Cast.ListPromptsReq.category:type_name -> Cast.CategoryENUM + 5, // 51: Cast.PromptInfo.category:type_name -> Cast.CategoryENUM + 82, // 52: Cast.ListPromptsResp.data:type_name -> Cast.PromptInfo + 82, // 53: Cast.UpdatePromptBatchReq.data:type_name -> Cast.PromptInfo + 82, // 54: Cast.UpdatePromptBatchResp.data:type_name -> Cast.PromptInfo + 86, // 55: Cast.UpdateArtistReq.artistInfo:type_name -> Cast.ArtistInfo + 86, // 56: Cast.GetArtistResp.artistInfo:type_name -> Cast.ArtistInfo + 2, // 57: Cast.UpdateWorkAnalysisStatusReq.workAction:type_name -> Cast.WorkActionENUM + 96, // 58: Cast.GetWorkAnalysisResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries + 97, // 59: Cast.GetWorkAnalysisResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries + 98, // 60: Cast.GetWorkAnalysisResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries + 99, // 61: Cast.GetWorkAnalysisResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries + 100, // 62: Cast.GetWorkAnalysisResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries + 101, // 63: Cast.GetWorkAnalysisResp.topCitiesSeries:type_name -> Cast.WorkAnalysisTopCities + 102, // 64: Cast.GetWorkAnalysisResp.mostActiveDaySeries:type_name -> Cast.WorkAnalysisMostActiveDay + 103, // 65: Cast.GetWorkAnalysisResp.bestPostTimeSeries:type_name -> Cast.WorkAnalysisBestPostTime + 95, // 66: Cast.GetWorkAnalysisDetailResp.WorkAnalysisLogData:type_name -> Cast.WorkAnalysisLogInfo + 96, // 67: Cast.GetWorkAnalysisDetailResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries + 97, // 68: Cast.GetWorkAnalysisDetailResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries + 98, // 69: Cast.GetWorkAnalysisDetailResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries + 99, // 70: Cast.GetWorkAnalysisDetailResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries + 100, // 71: Cast.GetWorkAnalysisDetailResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries + 101, // 72: Cast.GetWorkAnalysisDetailResp.topCitiesSeries:type_name -> Cast.WorkAnalysisTopCities + 102, // 73: Cast.GetWorkAnalysisDetailResp.mostActiveDaySeries:type_name -> Cast.WorkAnalysisMostActiveDay + 103, // 74: Cast.GetWorkAnalysisDetailResp.bestPostTimeSeries:type_name -> Cast.WorkAnalysisBestPostTime + 104, // 75: Cast.GetWorkAnalysisDetailResp.extra:type_name -> Cast.WorkAnalysisExtra + 110, // 76: Cast.ListWorkAnalysisResp.data:type_name -> Cast.WorkAnalysisInfo + 114, // 77: Cast.ArtistDataListResp.data:type_name -> Cast.ArtistDataRespItem + 117, // 78: Cast.MediaDataListResp.data:type_name -> Cast.MediaDataListItem + 96, // 79: Cast.ArtistMetricsSeriesResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries + 97, // 80: Cast.ArtistMetricsSeriesResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries + 98, // 81: Cast.ArtistMetricsSeriesResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries + 99, // 82: Cast.ArtistMetricsSeriesResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries + 100, // 83: Cast.ArtistMetricsSeriesResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries + 103, // 84: Cast.ArtistMetricsSeriesResp.bestPostTime:type_name -> Cast.WorkAnalysisBestPostTime + 102, // 85: Cast.ArtistMetricsSeriesResp.mostActiveDay:type_name -> Cast.WorkAnalysisMostActiveDay + 124, // 86: Cast.ArtistMetricsDailyWindowResp.fans:type_name -> Cast.SimplePoint + 124, // 87: Cast.ArtistMetricsDailyWindowResp.views:type_name -> Cast.SimplePoint + 124, // 88: Cast.ArtistMetricsDailyWindowResp.likes:type_name -> Cast.SimplePoint + 124, // 89: Cast.ArtistMetricsDailyWindowResp.comments:type_name -> Cast.SimplePoint + 124, // 90: Cast.ArtistMetricsDailyWindowResp.shares:type_name -> Cast.SimplePoint + 125, // 91: Cast.ArtistMetricsDailyWindowResp.bestPostTime:type_name -> Cast.BestPostTimePoint + 126, // 92: Cast.ArtistMetricsDailyWindowResp.mostActiveDay:type_name -> Cast.MostActiveDayPoint + 129, // 93: Cast.TobeConfirmedListResp.data:type_name -> Cast.TobeConfirmedItem + 132, // 94: Cast.UpsertMediaMetricsDailyBatchReq.data:type_name -> Cast.MediaMetricsDailyItem + 135, // 95: Cast.UpsertWorkMetricsDailyBatchReq.data:type_name -> Cast.WorkMetricsDailyItem + 139, // 96: Cast.GetArtistAyrShareInfoResp.data:type_name -> Cast.ArtistAyrShareInfo + 142, // 97: Cast.ListWorkPlatformInfoResp.data:type_name -> Cast.WorkPlatformInfo + 7, // 98: Cast.WorkDetailResp.MediaAccDataEntry.value:type_name -> Cast.MediaUserInfo + 150, // 99: Cast.RefreshWorkListResp.Info.PlatformInfoData:type_name -> Cast.RefreshWorkListResp.Info.PlatformInfo + 0, // 100: Cast.RefreshWorkListResp.Info.PlatformInfo.platformID:type_name -> Cast.PlatformIDENUM + 0, // 101: Cast.UpdateOAuthReq.Info.platformID:type_name -> Cast.PlatformIDENUM + 6, // 102: Cast.Cast.MediaUserList:input_type -> Cast.MediaUserListReq + 9, // 103: Cast.Cast.UpdateMediaAccount:input_type -> Cast.UpdateMediaAccountReq + 11, // 104: Cast.Cast.UnbindManager:input_type -> Cast.UnbindManagerReq + 13, // 105: Cast.Cast.BindManager:input_type -> Cast.BindManagerReq + 14, // 106: Cast.Cast.UpdateWorkImage:input_type -> Cast.UpdateWorkImageReq + 17, // 107: Cast.Cast.UpdateWorkVideo:input_type -> Cast.UpdateWorkVideoReq + 19, // 108: Cast.Cast.MediaInfo:input_type -> Cast.MediaInfoReq + 21, // 109: Cast.Cast.MediaInfoByPlatform:input_type -> Cast.MediaInfoByPlatformReq + 23, // 110: Cast.Cast.WorkList:input_type -> Cast.WorkListReq + 25, // 111: Cast.Cast.WorkDetail:input_type -> Cast.WorkDetailReq + 28, // 112: Cast.Cast.UpdateStatus:input_type -> Cast.UpdateStatusReq + 29, // 113: Cast.Cast.MediaAccounts:input_type -> Cast.MediaAccountsReq + 31, // 114: Cast.Cast.MediaWorks:input_type -> Cast.MediaWorksReq + 33, // 115: Cast.Cast.Publish:input_type -> Cast.PublishReq + 35, // 116: Cast.Cast.RePublish:input_type -> Cast.RePublishReq + 37, // 117: Cast.Cast.DelWork:input_type -> Cast.DelWorkReq + 38, // 118: Cast.Cast.WorkInfo:input_type -> Cast.WorkInfoReq + 40, // 119: Cast.Cast.ArtistInfo:input_type -> Cast.ArtistInfoReq + 42, // 120: Cast.Cast.ImportWorkBatch:input_type -> Cast.ImportWorkBatchReq + 45, // 121: Cast.Cast.UpdateWorkPlatformInfo:input_type -> Cast.UpdateWorkPlatformInfoReq + 47, // 122: Cast.Cast.UpdateWorkPublishLog:input_type -> Cast.UpdateWorkPublishLogReq + 48, // 123: Cast.Cast.RefreshWorkList:input_type -> Cast.RefreshWorkListReq + 50, // 124: Cast.Cast.OAuthAccount:input_type -> Cast.OAuthAccountReq + 52, // 125: Cast.Cast.OAuthAccountV2:input_type -> Cast.OAuthAccountV2Req + 56, // 126: Cast.Cast.OAuthCodeToToken:input_type -> Cast.OAuthCodeToTokenReq + 58, // 127: Cast.Cast.UpdateOAuth:input_type -> Cast.UpdateOAuthReq + 59, // 128: Cast.Cast.RefreshToken:input_type -> Cast.RefreshTokenReq + 61, // 129: Cast.Cast.PublishMediaInfo:input_type -> Cast.PublishMediaInfoReq + 152, // 130: Cast.Cast.Test:input_type -> google.protobuf.Empty + 63, // 131: Cast.Cast.UpdateVideoScript:input_type -> Cast.UpdateVideoScriptReq + 65, // 132: Cast.Cast.GetVideoScript:input_type -> Cast.GetVideoScriptReq + 67, // 133: Cast.Cast.ListVideoScripts:input_type -> Cast.ListVideoScriptsReq + 70, // 134: Cast.Cast.DeleteVideoScript:input_type -> Cast.DeleteVideoScriptReq + 71, // 135: Cast.Cast.UpdateVideoScriptBatch:input_type -> Cast.UpdateVideoScriptBatchReq + 73, // 136: Cast.Cast.UpdateScriptStatus:input_type -> Cast.UpdateScriptStatusReq + 75, // 137: Cast.Cast.GetLayout:input_type -> Cast.GetLayoutReq + 74, // 138: Cast.Cast.SetLayout:input_type -> Cast.SetLayoutReq + 77, // 139: Cast.Cast.UpdatePrompt:input_type -> Cast.UpdatePromptReq + 78, // 140: Cast.Cast.DeletePrompt:input_type -> Cast.DeletePromptReq + 79, // 141: Cast.Cast.GetPrompt:input_type -> Cast.GetPromptReq + 81, // 142: Cast.Cast.ListPrompts:input_type -> Cast.ListPromptsReq + 84, // 143: Cast.Cast.UpdatePromptBatch:input_type -> Cast.UpdatePromptBatchReq + 87, // 144: Cast.Cast.UpdateArtist:input_type -> Cast.UpdateArtistReq + 89, // 145: Cast.Cast.GetArtist:input_type -> Cast.GetArtistReq + 91, // 146: Cast.Cast.CreateWorkAnalysis:input_type -> Cast.CreateWorkAnalysisReq + 93, // 147: Cast.Cast.UpdateWorkAnalysis:input_type -> Cast.UpdateWorkAnalysisReq + 94, // 148: Cast.Cast.UpdateWorkAnalysisStatus:input_type -> Cast.UpdateWorkAnalysisStatusReq + 105, // 149: Cast.Cast.GetWorkAnalysis:input_type -> Cast.GetWorkAnalysisDetailReq + 106, // 150: Cast.Cast.GetLatestWorkAnalysis:input_type -> Cast.GetLatestWorkAnalysisReq + 109, // 151: Cast.Cast.ListWorkAnalysis:input_type -> Cast.ListWorkAnalysisReq + 112, // 152: Cast.Cast.DeleteWorkAnalysis:input_type -> Cast.DeleteWorkAnalysisReq + 131, // 153: Cast.Cast.UpdateWorkAnalysisApprovalID:input_type -> Cast.UpdateWorkAnalysisApprovalIDReq + 113, // 154: Cast.Cast.ArtistDataList:input_type -> Cast.ArtistDataListReq + 116, // 155: Cast.Cast.MediaDataList:input_type -> Cast.MediaDataListReq + 119, // 156: Cast.Cast.DataOverview:input_type -> Cast.DataOverviewReq + 121, // 157: Cast.Cast.ArtistMetricsSeries:input_type -> Cast.ArtistMetricsSeriesReq + 123, // 158: Cast.Cast.ArtistMetricsDailyWindow:input_type -> Cast.ArtistMetricsDailyWindowReq + 128, // 159: Cast.Cast.TobeConfirmedList:input_type -> Cast.TobeConfirmedListReq + 133, // 160: Cast.Cast.UpsertMediaMetricsDailyBatch:input_type -> Cast.UpsertMediaMetricsDailyBatchReq + 136, // 161: Cast.Cast.UpsertWorkMetricsDailyBatch:input_type -> Cast.UpsertWorkMetricsDailyBatchReq + 138, // 162: Cast.Cast.GetArtistAyrShareInfo:input_type -> Cast.GetArtistAyrShareInfoReq + 141, // 163: Cast.Cast.ListWorkPlatformInfo:input_type -> Cast.ListWorkPlatformInfoReq + 8, // 164: Cast.Cast.MediaUserList:output_type -> Cast.MediaUserListResp + 10, // 165: Cast.Cast.UpdateMediaAccount:output_type -> Cast.UpdateMediaAccountResp + 12, // 166: Cast.Cast.UnbindManager:output_type -> Cast.UnbindManagerResp + 152, // 167: Cast.Cast.BindManager:output_type -> google.protobuf.Empty + 15, // 168: Cast.Cast.UpdateWorkImage:output_type -> Cast.UpdateWorkImageResp + 18, // 169: Cast.Cast.UpdateWorkVideo:output_type -> Cast.UpdateWorkVideoResp + 20, // 170: Cast.Cast.MediaInfo:output_type -> Cast.MediaInfoResp + 22, // 171: Cast.Cast.MediaInfoByPlatform:output_type -> Cast.MediaInfoByPlatformResp + 24, // 172: Cast.Cast.WorkList:output_type -> Cast.WorkListResp + 27, // 173: Cast.Cast.WorkDetail:output_type -> Cast.WorkDetailResp + 152, // 174: Cast.Cast.UpdateStatus:output_type -> google.protobuf.Empty + 30, // 175: Cast.Cast.MediaAccounts:output_type -> Cast.MediaAccountsResp + 32, // 176: Cast.Cast.MediaWorks:output_type -> Cast.MediaWorksResp + 34, // 177: Cast.Cast.Publish:output_type -> Cast.PublishResp + 36, // 178: Cast.Cast.RePublish:output_type -> Cast.RePublishResp + 152, // 179: Cast.Cast.DelWork:output_type -> google.protobuf.Empty + 39, // 180: Cast.Cast.WorkInfo:output_type -> Cast.WorkInfoResp + 41, // 181: Cast.Cast.ArtistInfo:output_type -> Cast.ArtistInfoResp + 43, // 182: Cast.Cast.ImportWorkBatch:output_type -> Cast.ImportWorkBatchResp + 46, // 183: Cast.Cast.UpdateWorkPlatformInfo:output_type -> Cast.UpdateWorkPlatformInfoResp + 152, // 184: Cast.Cast.UpdateWorkPublishLog:output_type -> google.protobuf.Empty + 49, // 185: Cast.Cast.RefreshWorkList:output_type -> Cast.RefreshWorkListResp + 51, // 186: Cast.Cast.OAuthAccount:output_type -> Cast.OAuthAccountResp + 53, // 187: Cast.Cast.OAuthAccountV2:output_type -> Cast.OAuthAccountV2Resp + 57, // 188: Cast.Cast.OAuthCodeToToken:output_type -> Cast.OAuthCodeToTokenResp + 152, // 189: Cast.Cast.UpdateOAuth:output_type -> google.protobuf.Empty + 60, // 190: Cast.Cast.RefreshToken:output_type -> Cast.RefreshTokenResp + 62, // 191: Cast.Cast.PublishMediaInfo:output_type -> Cast.PublishMediaInfoResp + 152, // 192: Cast.Cast.Test:output_type -> google.protobuf.Empty + 64, // 193: Cast.Cast.UpdateVideoScript:output_type -> Cast.UpdateVideoScriptResp + 66, // 194: Cast.Cast.GetVideoScript:output_type -> Cast.GetVideoScriptResp + 69, // 195: Cast.Cast.ListVideoScripts:output_type -> Cast.ListVideoScriptsResp + 152, // 196: Cast.Cast.DeleteVideoScript:output_type -> google.protobuf.Empty + 72, // 197: Cast.Cast.UpdateVideoScriptBatch:output_type -> Cast.UpdateVideoScriptBatchResp + 152, // 198: Cast.Cast.UpdateScriptStatus:output_type -> google.protobuf.Empty + 76, // 199: Cast.Cast.GetLayout:output_type -> Cast.GetLayoutResp + 152, // 200: Cast.Cast.SetLayout:output_type -> google.protobuf.Empty + 152, // 201: Cast.Cast.UpdatePrompt:output_type -> google.protobuf.Empty + 152, // 202: Cast.Cast.DeletePrompt:output_type -> google.protobuf.Empty + 80, // 203: Cast.Cast.GetPrompt:output_type -> Cast.GetPromptResp + 83, // 204: Cast.Cast.ListPrompts:output_type -> Cast.ListPromptsResp + 85, // 205: Cast.Cast.UpdatePromptBatch:output_type -> Cast.UpdatePromptBatchResp + 88, // 206: Cast.Cast.UpdateArtist:output_type -> Cast.UpdateArtistResp + 90, // 207: Cast.Cast.GetArtist:output_type -> Cast.GetArtistResp + 92, // 208: Cast.Cast.CreateWorkAnalysis:output_type -> Cast.CreateWorkAnalysisResp + 152, // 209: Cast.Cast.UpdateWorkAnalysis:output_type -> google.protobuf.Empty + 152, // 210: Cast.Cast.UpdateWorkAnalysisStatus:output_type -> google.protobuf.Empty + 108, // 211: Cast.Cast.GetWorkAnalysis:output_type -> Cast.GetWorkAnalysisDetailResp + 107, // 212: Cast.Cast.GetLatestWorkAnalysis:output_type -> Cast.GetWorkAnalysisResp + 111, // 213: Cast.Cast.ListWorkAnalysis:output_type -> Cast.ListWorkAnalysisResp + 152, // 214: Cast.Cast.DeleteWorkAnalysis:output_type -> google.protobuf.Empty + 152, // 215: Cast.Cast.UpdateWorkAnalysisApprovalID:output_type -> google.protobuf.Empty + 115, // 216: Cast.Cast.ArtistDataList:output_type -> Cast.ArtistDataListResp + 118, // 217: Cast.Cast.MediaDataList:output_type -> Cast.MediaDataListResp + 120, // 218: Cast.Cast.DataOverview:output_type -> Cast.DataOverviewResp + 122, // 219: Cast.Cast.ArtistMetricsSeries:output_type -> Cast.ArtistMetricsSeriesResp + 127, // 220: Cast.Cast.ArtistMetricsDailyWindow:output_type -> Cast.ArtistMetricsDailyWindowResp + 130, // 221: Cast.Cast.TobeConfirmedList:output_type -> Cast.TobeConfirmedListResp + 134, // 222: Cast.Cast.UpsertMediaMetricsDailyBatch:output_type -> Cast.UpsertMediaMetricsDailyBatchResp + 137, // 223: Cast.Cast.UpsertWorkMetricsDailyBatch:output_type -> Cast.UpsertWorkMetricsDailyBatchResp + 140, // 224: Cast.Cast.GetArtistAyrShareInfo:output_type -> Cast.GetArtistAyrShareInfoResp + 143, // 225: Cast.Cast.ListWorkPlatformInfo:output_type -> Cast.ListWorkPlatformInfoResp + 164, // [164:226] is the sub-list for method output_type + 102, // [102:164] is the sub-list for method input_type + 102, // [102:102] is the sub-list for extension type_name + 102, // [102:102] is the sub-list for extension extendee + 0, // [0:102] is the sub-list for field type_name } func init() { file_pb_fiee_cast_proto_init() } @@ -13811,13 +15575,1755 @@ func file_pb_fiee_cast_proto_init() { if File_pb_fiee_cast_proto != nil { return } + if !protoimpl.UnsafeEnabled { + file_pb_fiee_cast_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaUserListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaUserInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaUserListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateMediaAccountReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateMediaAccountResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UnbindManagerReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UnbindManagerResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BindManagerReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkImageReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkImageResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkVideoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkVideoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaInfoByPlatformReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaInfoByPlatformResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkDetailReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkLogInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkDetailResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateStatusReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaAccountsReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaAccountsResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaWorksReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaWorksResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RePublishReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RePublishResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DelWorkReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ImportWorkBatchReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ImportWorkBatchResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PlatformInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkPlatformInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkPlatformInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkPublishLogReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshWorkListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshWorkListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthAccountReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthAccountResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthAccountV2Req); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthAccountV2Resp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthYoutubeTokenReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthYoutubeTokenResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthCodeToTokenReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthCodeToTokenResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateOAuthReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshTokenReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshTokenResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishMediaInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishMediaInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateVideoScriptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateVideoScriptResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetVideoScriptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetVideoScriptResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListVideoScriptsReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VideoScriptInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListVideoScriptsResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteVideoScriptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateVideoScriptBatchReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateVideoScriptBatchResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateScriptStatusReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SetLayoutReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetLayoutReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetLayoutResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdatePromptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeletePromptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetPromptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetPromptResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListPromptsReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PromptInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListPromptsResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdatePromptBatchReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdatePromptBatchResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateArtistReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateArtistResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetArtistReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetArtistResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateWorkAnalysisReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateWorkAnalysisResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkAnalysisReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkAnalysisStatusReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisLogInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisFansSeries); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisViewsSeries); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisLikesSeries); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisCommentsSeries); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisSharesSeries); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisTopCities); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisMostActiveDay); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisBestPostTime); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisExtra); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetWorkAnalysisDetailReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetLatestWorkAnalysisReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetWorkAnalysisResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetWorkAnalysisDetailResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkAnalysisReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkAnalysisResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteWorkAnalysisReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistDataListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistDataRespItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistDataListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaDataListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaDataListItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaDataListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DataOverviewReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DataOverviewResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistMetricsSeriesReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistMetricsSeriesResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistMetricsDailyWindowReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SimplePoint); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BestPostTimePoint); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MostActiveDayPoint); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistMetricsDailyWindowResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TobeConfirmedListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TobeConfirmedItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TobeConfirmedListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkAnalysisApprovalIDReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaMetricsDailyItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertMediaMetricsDailyBatchReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertMediaMetricsDailyBatchResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkMetricsDailyItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertWorkMetricsDailyBatchReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertWorkMetricsDailyBatchResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetArtistAyrShareInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistAyrShareInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetArtistAyrShareInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkPlatformInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkPlatformInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkPlatformInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkListResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaAccountsResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaWorksResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshWorkListResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshWorkListResp_Info_PlatformInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateOAuthReq_Info); 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: unsafe.Slice(unsafe.StringData(file_pb_fiee_cast_proto_rawDesc), len(file_pb_fiee_cast_proto_rawDesc)), + RawDescriptor: file_pb_fiee_cast_proto_rawDesc, NumEnums: 6, - NumMessages: 144, + NumMessages: 146, NumExtensions: 0, NumServices: 1, }, @@ -13827,6 +17333,7 @@ func file_pb_fiee_cast_proto_init() { MessageInfos: file_pb_fiee_cast_proto_msgTypes, }.Build() File_pb_fiee_cast_proto = out.File + file_pb_fiee_cast_proto_rawDesc = nil file_pb_fiee_cast_proto_goTypes = nil file_pb_fiee_cast_proto_depIdxs = nil } diff --git a/api/cast/cast.pb.validate.go b/api/cast/cast.pb.validate.go index ae9cf00..579eea6 100644 --- a/api/cast/cast.pb.validate.go +++ b/api/cast/cast.pb.validate.go @@ -79,6 +79,8 @@ func (m *MediaUserListReq) validate(all bool) error { // no validation rules for MediaUserID + // no validation rules for NeedStats + if len(errors) > 0 { return MediaUserListReqMultiError(errors) } @@ -93,7 +95,7 @@ type MediaUserListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaUserListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -199,6 +201,18 @@ func (m *MediaUserInfo) validate(all bool) error { // no validation rules for AuthStatus + // no validation rules for PendingVideoCount + + // no validation rules for UploadedVideoCount + + // no validation rules for ReleasedVideoTotal + + // no validation rules for PendingPostCount + + // no validation rules for UploadedPostCount + + // no validation rules for ReleasedPostTotal + if len(errors) > 0 { return MediaUserInfoMultiError(errors) } @@ -213,7 +227,7 @@ type MediaUserInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaUserInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -349,7 +363,7 @@ type MediaUserListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaUserListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -457,6 +471,8 @@ func (m *UpdateMediaAccountReq) validate(all bool) error { // no validation rules for ArtistPhoneAreaCode + // no validation rules for ArtistSubNum + if len(errors) > 0 { return UpdateMediaAccountReqMultiError(errors) } @@ -471,7 +487,7 @@ type UpdateMediaAccountReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateMediaAccountReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -575,7 +591,7 @@ type UpdateMediaAccountRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateMediaAccountRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -679,7 +695,7 @@ type UnbindManagerReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UnbindManagerReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -781,7 +797,7 @@ type UnbindManagerRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UnbindManagerRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -889,7 +905,7 @@ type BindManagerReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m BindManagerReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1115,6 +1131,39 @@ func (m *UpdateWorkImageReq) validate(all bool) error { // no validation rules for Success + // no validation rules for ArtistSubNum + + // no validation rules for ScriptUuid + + if all { + switch v := interface{}(m.GetPublishConfig5()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, UpdateWorkImageReqValidationError{ + field: "PublishConfig5", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, UpdateWorkImageReqValidationError{ + field: "PublishConfig5", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetPublishConfig5()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return UpdateWorkImageReqValidationError{ + field: "PublishConfig5", + reason: "embedded message failed validation", + cause: err, + } + } + } + if len(errors) > 0 { return UpdateWorkImageReqMultiError(errors) } @@ -1129,7 +1178,7 @@ type UpdateWorkImageReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkImageReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1233,7 +1282,7 @@ type UpdateWorkImageRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkImageRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1347,7 +1396,7 @@ type PublishConfigMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishConfigMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1577,6 +1626,37 @@ func (m *UpdateWorkVideoReq) validate(all bool) error { // no validation rules for ScriptUuid + // no validation rules for ArtistSubNum + + if all { + switch v := interface{}(m.GetPublishConfig5()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, UpdateWorkVideoReqValidationError{ + field: "PublishConfig5", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, UpdateWorkVideoReqValidationError{ + field: "PublishConfig5", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetPublishConfig5()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return UpdateWorkVideoReqValidationError{ + field: "PublishConfig5", + reason: "embedded message failed validation", + cause: err, + } + } + } + if len(errors) > 0 { return UpdateWorkVideoReqMultiError(errors) } @@ -1591,7 +1671,7 @@ type UpdateWorkVideoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkVideoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1695,7 +1775,7 @@ type UpdateWorkVideoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkVideoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1802,7 +1882,7 @@ type MediaInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1931,7 +2011,7 @@ type MediaInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1995,6 +2075,243 @@ var _ interface { ErrorName() string } = MediaInfoRespValidationError{} +// Validate checks the field values on MediaInfoByPlatformReq with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *MediaInfoByPlatformReq) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on MediaInfoByPlatformReq with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// MediaInfoByPlatformReqMultiError, or nil if none found. +func (m *MediaInfoByPlatformReq) ValidateAll() error { + return m.validate(true) +} + +func (m *MediaInfoByPlatformReq) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for ArtistUuid + + // no validation rules for PlatformID + + if len(errors) > 0 { + return MediaInfoByPlatformReqMultiError(errors) + } + + return nil +} + +// MediaInfoByPlatformReqMultiError is an error wrapping multiple validation +// errors returned by MediaInfoByPlatformReq.ValidateAll() if the designated +// constraints aren't met. +type MediaInfoByPlatformReqMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m MediaInfoByPlatformReqMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m MediaInfoByPlatformReqMultiError) AllErrors() []error { return m } + +// MediaInfoByPlatformReqValidationError is the validation error returned by +// MediaInfoByPlatformReq.Validate if the designated constraints aren't met. +type MediaInfoByPlatformReqValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e MediaInfoByPlatformReqValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e MediaInfoByPlatformReqValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e MediaInfoByPlatformReqValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e MediaInfoByPlatformReqValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e MediaInfoByPlatformReqValidationError) ErrorName() string { + return "MediaInfoByPlatformReqValidationError" +} + +// Error satisfies the builtin error interface +func (e MediaInfoByPlatformReqValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sMediaInfoByPlatformReq.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = MediaInfoByPlatformReqValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = MediaInfoByPlatformReqValidationError{} + +// Validate checks the field values on MediaInfoByPlatformResp with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *MediaInfoByPlatformResp) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on MediaInfoByPlatformResp with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// MediaInfoByPlatformRespMultiError, or nil if none found. +func (m *MediaInfoByPlatformResp) ValidateAll() error { + return m.validate(true) +} + +func (m *MediaInfoByPlatformResp) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + if all { + switch v := interface{}(m.GetInfo()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, MediaInfoByPlatformRespValidationError{ + field: "Info", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, MediaInfoByPlatformRespValidationError{ + field: "Info", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetInfo()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return MediaInfoByPlatformRespValidationError{ + field: "Info", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if len(errors) > 0 { + return MediaInfoByPlatformRespMultiError(errors) + } + + return nil +} + +// MediaInfoByPlatformRespMultiError is an error wrapping multiple validation +// errors returned by MediaInfoByPlatformResp.ValidateAll() if the designated +// constraints aren't met. +type MediaInfoByPlatformRespMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m MediaInfoByPlatformRespMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m MediaInfoByPlatformRespMultiError) AllErrors() []error { return m } + +// MediaInfoByPlatformRespValidationError is the validation error returned by +// MediaInfoByPlatformResp.Validate if the designated constraints aren't met. +type MediaInfoByPlatformRespValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e MediaInfoByPlatformRespValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e MediaInfoByPlatformRespValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e MediaInfoByPlatformRespValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e MediaInfoByPlatformRespValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e MediaInfoByPlatformRespValidationError) ErrorName() string { + return "MediaInfoByPlatformRespValidationError" +} + +// Error satisfies the builtin error interface +func (e MediaInfoByPlatformRespValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sMediaInfoByPlatformResp.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = MediaInfoByPlatformRespValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = MediaInfoByPlatformRespValidationError{} + // Validate checks the field values on WorkListReq with the rules defined in // the proto definition for this message. If any rules are violated, the first // error encountered is returned, or nil if there are no violations. @@ -2047,6 +2364,18 @@ func (m *WorkListReq) validate(all bool) error { // no validation rules for ScriptUuid + // no validation rules for ArtistSubNum + + // no validation rules for TiktokStatus + + // no validation rules for InsStatus + + // no validation rules for DmStatus + + // no validation rules for YoutubeStatus + + // no validation rules for BlueskyStatus + if len(errors) > 0 { return WorkListReqMultiError(errors) } @@ -2060,7 +2389,7 @@ type WorkListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2195,7 +2524,7 @@ type WorkListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2297,7 +2626,7 @@ type WorkDetailReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkDetailReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2412,7 +2741,7 @@ type WorkLogInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkLogInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2716,11 +3045,36 @@ func (m *WorkDetailResp) validate(all bool) error { // no validation rules for ArtistUuid - // no validation rules for TiktokStatus + // no validation rules for ArtistSubNum - // no validation rules for InsStatus - - // no validation rules for DmStatus + if all { + switch v := interface{}(m.GetPublishConfig5()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, WorkDetailRespValidationError{ + field: "PublishConfig5", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, WorkDetailRespValidationError{ + field: "PublishConfig5", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetPublishConfig5()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return WorkDetailRespValidationError{ + field: "PublishConfig5", + reason: "embedded message failed validation", + cause: err, + } + } + } if len(errors) > 0 { return WorkDetailRespMultiError(errors) @@ -2736,7 +3090,7 @@ type WorkDetailRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkDetailRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2852,7 +3206,7 @@ type UpdateStatusReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateStatusReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2954,7 +3308,7 @@ type MediaAccountsReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaAccountsReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3088,7 +3442,7 @@ type MediaAccountsRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaAccountsRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3196,7 +3550,7 @@ type MediaWorksReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaWorksReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3332,7 +3686,7 @@ type MediaWorksRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaWorksRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3431,7 +3785,7 @@ type PublishReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3564,7 +3918,7 @@ type PublishRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3665,7 +4019,7 @@ type RePublishReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RePublishReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3769,7 +4123,7 @@ type RePublishRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RePublishRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3870,7 +4224,7 @@ type DelWorkReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DelWorkReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3971,7 +4325,7 @@ type WorkInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4082,7 +4436,7 @@ type WorkInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4184,7 +4538,7 @@ type ArtistInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4292,7 +4646,7 @@ type ArtistInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4426,7 +4780,7 @@ type ImportWorkBatchReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ImportWorkBatchReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4566,7 +4920,7 @@ type ImportWorkBatchRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ImportWorkBatchRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4685,7 +5039,7 @@ type PlatformInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PlatformInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4819,7 +5173,7 @@ type UpdateWorkPlatformInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkPlatformInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4921,7 +5275,7 @@ type UpdateWorkPlatformInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkPlatformInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5031,7 +5385,7 @@ type UpdateWorkPublishLogReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkPublishLogReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5135,7 +5489,7 @@ type RefreshWorkListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshWorkListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5271,7 +5625,7 @@ type RefreshWorkListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshWorkListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5375,7 +5729,7 @@ type OAuthAccountReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthAccountReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5477,7 +5831,7 @@ type OAuthAccountRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthAccountRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5579,7 +5933,7 @@ type OAuthAccountV2ReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthAccountV2ReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5689,7 +6043,7 @@ type OAuthAccountV2RespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthAccountV2RespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5795,7 +6149,7 @@ type OAuthYoutubeTokenReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthYoutubeTokenReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5903,7 +6257,7 @@ type OAuthYoutubeTokenRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthYoutubeTokenRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6011,7 +6365,7 @@ type OAuthCodeToTokenReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthCodeToTokenReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6113,7 +6467,7 @@ type OAuthCodeToTokenRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthCodeToTokenRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6249,7 +6603,7 @@ type UpdateOAuthReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateOAuthReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6355,7 +6709,7 @@ type RefreshTokenReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshTokenReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6459,7 +6813,7 @@ type RefreshTokenRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshTokenRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6565,7 +6919,7 @@ type PublishMediaInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishMediaInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6675,7 +7029,7 @@ type PublishMediaInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishMediaInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6795,7 +7149,7 @@ type UpdateVideoScriptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateVideoScriptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6899,7 +7253,7 @@ type UpdateVideoScriptRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateVideoScriptRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7003,7 +7357,7 @@ type GetVideoScriptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetVideoScriptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7131,7 +7485,7 @@ type GetVideoScriptRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetVideoScriptRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7251,7 +7605,7 @@ type ListVideoScriptsReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListVideoScriptsReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7381,7 +7735,7 @@ type VideoScriptInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m VideoScriptInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7517,7 +7871,7 @@ type ListVideoScriptsRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListVideoScriptsRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7621,7 +7975,7 @@ type DeleteVideoScriptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DeleteVideoScriptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7757,7 +8111,7 @@ type UpdateVideoScriptBatchReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateVideoScriptBatchReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7897,7 +8251,7 @@ type UpdateVideoScriptBatchRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateVideoScriptBatchRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8007,7 +8361,7 @@ type UpdateScriptStatusReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateScriptStatusReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8114,7 +8468,7 @@ type SetLayoutReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m SetLayoutReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8217,7 +8571,7 @@ type GetLayoutReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetLayoutReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8321,7 +8675,7 @@ type GetLayoutRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetLayoutRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8427,7 +8781,7 @@ type UpdatePromptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdatePromptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8529,7 +8883,7 @@ type DeletePromptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DeletePromptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8630,7 +8984,7 @@ type GetPromptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetPromptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8738,7 +9092,7 @@ type GetPromptRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetPromptRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8834,6 +9188,10 @@ func (m *ListPromptsReq) validate(all bool) error { // no validation rules for Rand + // no validation rules for StartUseCount + + // no validation rules for EndUseCount + if len(errors) > 0 { return ListPromptsReqMultiError(errors) } @@ -8848,7 +9206,7 @@ type ListPromptsReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListPromptsReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8963,7 +9321,7 @@ type PromptInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PromptInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9099,7 +9457,7 @@ type ListPromptsRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListPromptsRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9233,7 +9591,7 @@ type UpdatePromptBatchReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdatePromptBatchReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9373,7 +9731,7 @@ type UpdatePromptBatchRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdatePromptBatchRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9482,7 +9840,7 @@ type ArtistInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9613,7 +9971,7 @@ type UpdateArtistReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateArtistReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9715,7 +10073,7 @@ type UpdateArtistRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateArtistRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9816,7 +10174,7 @@ type GetArtistReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetArtistReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9947,7 +10305,7 @@ type GetArtistRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetArtistRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10095,7 +10453,7 @@ type CreateWorkAnalysisReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m CreateWorkAnalysisReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10199,7 +10557,7 @@ type CreateWorkAnalysisRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m CreateWorkAnalysisRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10343,7 +10701,7 @@ type UpdateWorkAnalysisReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkAnalysisReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10445,6 +10803,8 @@ func (m *UpdateWorkAnalysisStatusReq) validate(all bool) error { // no validation rules for CostType + // no validation rules for ConfirmType + if len(errors) > 0 { return UpdateWorkAnalysisStatusReqMultiError(errors) } @@ -10459,7 +10819,7 @@ type UpdateWorkAnalysisStatusReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkAnalysisStatusReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10580,7 +10940,7 @@ type WorkAnalysisLogInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisLogInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10698,7 +11058,7 @@ type WorkAnalysisFansSeriesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisFansSeriesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10816,7 +11176,7 @@ type WorkAnalysisViewsSeriesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisViewsSeriesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10934,7 +11294,7 @@ type WorkAnalysisLikesSeriesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisLikesSeriesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11052,7 +11412,7 @@ type WorkAnalysisCommentsSeriesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisCommentsSeriesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11170,7 +11530,7 @@ type WorkAnalysisSharesSeriesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisSharesSeriesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11280,7 +11640,7 @@ type WorkAnalysisTopCitiesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisTopCitiesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11390,7 +11750,7 @@ type WorkAnalysisMostActiveDayMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisMostActiveDayMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11500,7 +11860,7 @@ type WorkAnalysisBestPostTimeMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisBestPostTimeMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11612,7 +11972,7 @@ type WorkAnalysisExtraMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisExtraMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11716,7 +12076,7 @@ type GetWorkAnalysisDetailReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetWorkAnalysisDetailReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11820,7 +12180,7 @@ type GetLatestWorkAnalysisReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetLatestWorkAnalysisReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -12214,7 +12574,7 @@ type GetWorkAnalysisRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetWorkAnalysisRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -12671,7 +13031,7 @@ type GetWorkAnalysisDetailRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetWorkAnalysisDetailRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -12795,7 +13155,7 @@ type ListWorkAnalysisReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListWorkAnalysisReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -12927,7 +13287,7 @@ type WorkAnalysisInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13063,7 +13423,7 @@ type ListWorkAnalysisRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListWorkAnalysisRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13167,7 +13527,7 @@ type DeleteWorkAnalysisReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DeleteWorkAnalysisReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13285,7 +13645,7 @@ type ArtistDataListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistDataListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13425,7 +13785,7 @@ type ArtistDataRespItemMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistDataRespItemMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13563,7 +13923,7 @@ type ArtistDataListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistDataListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13675,7 +14035,7 @@ type MediaDataListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaDataListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13805,7 +14165,7 @@ type MediaDataListItemMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaDataListItemMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13943,7 +14303,7 @@ type MediaDataListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaDataListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14047,7 +14407,7 @@ type DataOverviewReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DataOverviewReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14187,7 +14547,7 @@ type DataOverviewRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DataOverviewRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14299,7 +14659,7 @@ type ArtistMetricsSeriesReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistMetricsSeriesReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14604,7 +14964,7 @@ type ArtistMetricsSeriesRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistMetricsSeriesRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14712,7 +15072,7 @@ type ArtistMetricsDailyWindowReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistMetricsDailyWindowReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14818,7 +15178,7 @@ type SimplePointMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m SimplePointMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14922,7 +15282,7 @@ type BestPostTimePointMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m BestPostTimePointMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15028,7 +15388,7 @@ type MostActiveDayPointMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MostActiveDayPointMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15378,7 +15738,7 @@ type ArtistMetricsDailyWindowRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistMetricsDailyWindowRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15487,7 +15847,7 @@ type TobeConfirmedListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m TobeConfirmedListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15621,7 +15981,7 @@ type TobeConfirmedItemMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m TobeConfirmedItemMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15759,7 +16119,7 @@ type TobeConfirmedListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m TobeConfirmedListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15865,7 +16225,7 @@ type UpdateWorkAnalysisApprovalIDReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkAnalysisApprovalIDReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15998,7 +16358,7 @@ type MediaMetricsDailyItemMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaMetricsDailyItemMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16134,7 +16494,7 @@ type UpsertMediaMetricsDailyBatchReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpsertMediaMetricsDailyBatchReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16241,7 +16601,7 @@ type UpsertMediaMetricsDailyBatchRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpsertMediaMetricsDailyBatchRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16370,7 +16730,7 @@ type WorkMetricsDailyItemMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkMetricsDailyItemMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16506,7 +16866,7 @@ type UpsertWorkMetricsDailyBatchReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpsertWorkMetricsDailyBatchReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16611,7 +16971,7 @@ type UpsertWorkMetricsDailyBatchRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpsertWorkMetricsDailyBatchRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16724,7 +17084,7 @@ type GetArtistAyrShareInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetArtistAyrShareInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16844,7 +17204,7 @@ type ArtistAyrShareInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistAyrShareInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16982,7 +17342,7 @@ type GetArtistAyrShareInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetArtistAyrShareInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17090,7 +17450,7 @@ type ListWorkPlatformInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListWorkPlatformInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17198,6 +17558,16 @@ func (m *WorkPlatformInfo) validate(all bool) error { // no validation rules for UpdatedAt + // no validation rules for ArtistUuid + + // no validation rules for PlatformUserName + + // no validation rules for PlatformUserID + + // no validation rules for ArtistName + + // no validation rules for ArtistPhone + if len(errors) > 0 { return WorkPlatformInfoMultiError(errors) } @@ -17212,7 +17582,7 @@ type WorkPlatformInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkPlatformInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17348,7 +17718,7 @@ type ListWorkPlatformInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListWorkPlatformInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17460,6 +17830,20 @@ func (m *WorkListResp_Info) validate(all bool) error { // no validation rules for ScriptTitle + // no validation rules for ArtistSubNum + + // no validation rules for TiktokStatus + + // no validation rules for InsStatus + + // no validation rules for DmStatus + + // no validation rules for ConfirmType + + // no validation rules for YoutubeStatus + + // no validation rules for BlueskyStatus + if len(errors) > 0 { return WorkListResp_InfoMultiError(errors) } @@ -17474,7 +17858,7 @@ type WorkListResp_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkListResp_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17588,7 +17972,7 @@ type MediaAccountsResp_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaAccountsResp_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17708,7 +18092,7 @@ type MediaWorksResp_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaWorksResp_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17814,7 +18198,7 @@ type PublishResp_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishResp_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17952,7 +18336,7 @@ type RefreshWorkListResp_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshWorkListResp_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -18068,7 +18452,7 @@ type RefreshWorkListResp_Info_PlatformInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshWorkListResp_Info_PlatformInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -18181,7 +18565,7 @@ type UpdateOAuthReq_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateOAuthReq_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } diff --git a/api/cast/cast_triple.pb.go b/api/cast/cast_triple.pb.go index 40e6f77..f940436 100644 --- a/api/cast/cast_triple.pb.go +++ b/api/cast/cast_triple.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go-triple. DO NOT EDIT. // versions: // - protoc-gen-go-triple v1.0.8 -// - protoc v6.32.0--rc2 +// - protoc v3.21.1 // source: pb/fiee/cast.proto package cast @@ -36,6 +36,7 @@ type CastClient interface { UpdateWorkImage(ctx context.Context, in *UpdateWorkImageReq, opts ...grpc_go.CallOption) (*UpdateWorkImageResp, common.ErrorWithAttachment) UpdateWorkVideo(ctx context.Context, in *UpdateWorkVideoReq, opts ...grpc_go.CallOption) (*UpdateWorkVideoResp, common.ErrorWithAttachment) MediaInfo(ctx context.Context, in *MediaInfoReq, opts ...grpc_go.CallOption) (*MediaInfoResp, common.ErrorWithAttachment) + MediaInfoByPlatform(ctx context.Context, in *MediaInfoByPlatformReq, opts ...grpc_go.CallOption) (*MediaInfoByPlatformResp, common.ErrorWithAttachment) WorkList(ctx context.Context, in *WorkListReq, opts ...grpc_go.CallOption) (*WorkListResp, common.ErrorWithAttachment) WorkDetail(ctx context.Context, in *WorkDetailReq, opts ...grpc_go.CallOption) (*WorkDetailResp, common.ErrorWithAttachment) UpdateStatus(ctx context.Context, in *UpdateStatusReq, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment) @@ -114,6 +115,7 @@ type CastClientImpl struct { UpdateWorkImage func(ctx context.Context, in *UpdateWorkImageReq) (*UpdateWorkImageResp, error) UpdateWorkVideo func(ctx context.Context, in *UpdateWorkVideoReq) (*UpdateWorkVideoResp, error) MediaInfo func(ctx context.Context, in *MediaInfoReq) (*MediaInfoResp, error) + MediaInfoByPlatform func(ctx context.Context, in *MediaInfoByPlatformReq) (*MediaInfoByPlatformResp, error) WorkList func(ctx context.Context, in *WorkListReq) (*WorkListResp, error) WorkDetail func(ctx context.Context, in *WorkDetailReq) (*WorkDetailResp, error) UpdateStatus func(ctx context.Context, in *UpdateStatusReq) (*emptypb.Empty, error) @@ -224,6 +226,12 @@ func (c *castClient) MediaInfo(ctx context.Context, in *MediaInfoReq, opts ...gr return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/MediaInfo", in, out) } +func (c *castClient) MediaInfoByPlatform(ctx context.Context, in *MediaInfoByPlatformReq, opts ...grpc_go.CallOption) (*MediaInfoByPlatformResp, common.ErrorWithAttachment) { + out := new(MediaInfoByPlatformResp) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/MediaInfoByPlatform", in, out) +} + func (c *castClient) WorkList(ctx context.Context, in *WorkListReq, opts ...grpc_go.CallOption) (*WorkListResp, common.ErrorWithAttachment) { out := new(WorkListResp) interfaceKey := ctx.Value(constant.InterfaceKey).(string) @@ -559,6 +567,7 @@ type CastServer interface { UpdateWorkImage(context.Context, *UpdateWorkImageReq) (*UpdateWorkImageResp, error) UpdateWorkVideo(context.Context, *UpdateWorkVideoReq) (*UpdateWorkVideoResp, error) MediaInfo(context.Context, *MediaInfoReq) (*MediaInfoResp, error) + MediaInfoByPlatform(context.Context, *MediaInfoByPlatformReq) (*MediaInfoByPlatformResp, error) WorkList(context.Context, *WorkListReq) (*WorkListResp, error) WorkDetail(context.Context, *WorkDetailReq) (*WorkDetailResp, error) UpdateStatus(context.Context, *UpdateStatusReq) (*emptypb.Empty, error) @@ -652,6 +661,9 @@ func (UnimplementedCastServer) UpdateWorkVideo(context.Context, *UpdateWorkVideo func (UnimplementedCastServer) MediaInfo(context.Context, *MediaInfoReq) (*MediaInfoResp, error) { return nil, status.Errorf(codes.Unimplemented, "method MediaInfo not implemented") } +func (UnimplementedCastServer) MediaInfoByPlatform(context.Context, *MediaInfoByPlatformReq) (*MediaInfoByPlatformResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method MediaInfoByPlatform not implemented") +} func (UnimplementedCastServer) WorkList(context.Context, *WorkListReq) (*WorkListResp, error) { return nil, status.Errorf(codes.Unimplemented, "method WorkList not implemented") } @@ -1045,6 +1057,35 @@ func _Cast_MediaInfo_Handler(srv interface{}, ctx context.Context, dec func(inte return interceptor(ctx, in, info, handler) } +func _Cast_MediaInfoByPlatform_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(MediaInfoByPlatformReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("MediaInfoByPlatform", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + func _Cast_WorkList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { in := new(WorkListReq) if err := dec(in); err != nil { @@ -2646,6 +2687,10 @@ var Cast_ServiceDesc = grpc_go.ServiceDesc{ MethodName: "MediaInfo", Handler: _Cast_MediaInfo_Handler, }, + { + MethodName: "MediaInfoByPlatform", + Handler: _Cast_MediaInfoByPlatform_Handler, + }, { MethodName: "WorkList", Handler: _Cast_WorkList_Handler, From 0e2c70e51ebd3f1f4e1d9d7c9c6b0575e4fda822 Mon Sep 17 00:00:00 2001 From: cjy Date: Tue, 23 Dec 2025 10:37:22 +0800 Subject: [PATCH 04/19] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20pb?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/cast/cast.pb.go | 8589 +++++++++++++++++++++------------- api/cast/cast.pb.validate.go | 2000 ++++++++ api/cast/cast_triple.pb.go | 298 +- 3 files changed, 7652 insertions(+), 3235 deletions(-) diff --git a/api/cast/cast.pb.go b/api/cast/cast.pb.go index 196f9f4..3fa67fa 100644 --- a/api/cast/cast.pb.go +++ b/api/cast/cast.pb.go @@ -296,6 +296,55 @@ func (PublishStatusENUM) EnumDescriptor() ([]byte, []int) { return file_pb_fiee_cast_proto_rawDescGZIP(), []int{4} } +type ConfirmFailENUM int32 + +const ( + ConfirmFailENUM_ConfirmFailENUM_NO ConfirmFailENUM = 0 + ConfirmFailENUM_ConfirmFailENUM_NOTENOUGH ConfirmFailENUM = 1 + ConfirmFailENUM_ConfirmFailENUM_EXPIRED ConfirmFailENUM = 2 +) + +// Enum value maps for ConfirmFailENUM. +var ( + ConfirmFailENUM_name = map[int32]string{ + 0: "ConfirmFailENUM_NO", + 1: "ConfirmFailENUM_NOTENOUGH", + 2: "ConfirmFailENUM_EXPIRED", + } + ConfirmFailENUM_value = map[string]int32{ + "ConfirmFailENUM_NO": 0, + "ConfirmFailENUM_NOTENOUGH": 1, + "ConfirmFailENUM_EXPIRED": 2, + } +) + +func (x ConfirmFailENUM) Enum() *ConfirmFailENUM { + p := new(ConfirmFailENUM) + *p = x + return p +} + +func (x ConfirmFailENUM) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (ConfirmFailENUM) Descriptor() protoreflect.EnumDescriptor { + return file_pb_fiee_cast_proto_enumTypes[5].Descriptor() +} + +func (ConfirmFailENUM) Type() protoreflect.EnumType { + return &file_pb_fiee_cast_proto_enumTypes[5] +} + +func (x ConfirmFailENUM) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use ConfirmFailENUM.Descriptor instead. +func (ConfirmFailENUM) EnumDescriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{5} +} + type CategoryENUM int32 const ( @@ -335,11 +384,11 @@ func (x CategoryENUM) String() string { } func (CategoryENUM) Descriptor() protoreflect.EnumDescriptor { - return file_pb_fiee_cast_proto_enumTypes[5].Descriptor() + return file_pb_fiee_cast_proto_enumTypes[6].Descriptor() } func (CategoryENUM) Type() protoreflect.EnumType { - return &file_pb_fiee_cast_proto_enumTypes[5] + return &file_pb_fiee_cast_proto_enumTypes[6] } func (x CategoryENUM) Number() protoreflect.EnumNumber { @@ -348,7 +397,62 @@ func (x CategoryENUM) Number() protoreflect.EnumNumber { // Deprecated: Use CategoryENUM.Descriptor instead. func (CategoryENUM) EnumDescriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{5} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{6} +} + +type AsInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ProfileKey string `protobuf:"bytes,1,opt,name=profileKey,proto3" json:"profileKey"` + AsID string `protobuf:"bytes,2,opt,name=AsID,proto3" json:"AsID"` +} + +func (x *AsInfo) Reset() { + *x = AsInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *AsInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*AsInfo) ProtoMessage() {} + +func (x *AsInfo) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_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 AsInfo.ProtoReflect.Descriptor instead. +func (*AsInfo) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{0} +} + +func (x *AsInfo) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +func (x *AsInfo) GetAsID() string { + if x != nil { + return x.AsID + } + return "" } type MediaUserListReq struct { @@ -368,12 +472,13 @@ type MediaUserListReq struct { AuthStatus AuthStatusENUM `protobuf:"varint,10,opt,name=authStatus,proto3,enum=Cast.AuthStatusENUM" json:"authStatus"` MediaUserID string `protobuf:"bytes,11,opt,name=mediaUserID,proto3" json:"mediaUserID"` NeedStats bool `protobuf:"varint,12,opt,name=needStats,proto3" json:"needStats"` + NeedAsInfo bool `protobuf:"varint,13,opt,name=needAsInfo,proto3" json:"needAsInfo"` } func (x *MediaUserListReq) Reset() { *x = MediaUserListReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[0] + mi := &file_pb_fiee_cast_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -386,7 +491,7 @@ func (x *MediaUserListReq) String() string { func (*MediaUserListReq) ProtoMessage() {} func (x *MediaUserListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[0] + mi := &file_pb_fiee_cast_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -399,7 +504,7 @@ func (x *MediaUserListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaUserListReq.ProtoReflect.Descriptor instead. func (*MediaUserListReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{1} } func (x *MediaUserListReq) GetArtistVal() string { @@ -486,6 +591,13 @@ func (x *MediaUserListReq) GetNeedStats() bool { return false } +func (x *MediaUserListReq) GetNeedAsInfo() bool { + if x != nil { + return x.NeedAsInfo + } + return false +} + type MediaUserInfo struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -507,12 +619,13 @@ type MediaUserInfo struct { PendingPostCount int32 `protobuf:"varint,14,opt,name=pendingPostCount,proto3" json:"pendingPostCount"` UploadedPostCount int32 `protobuf:"varint,15,opt,name=uploadedPostCount,proto3" json:"uploadedPostCount"` ReleasedPostTotal int32 `protobuf:"varint,16,opt,name=releasedPostTotal,proto3" json:"releasedPostTotal"` + AsInfo *AsInfo `protobuf:"bytes,17,opt,name=asInfo,proto3" json:"asInfo"` } func (x *MediaUserInfo) Reset() { *x = MediaUserInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[1] + mi := &file_pb_fiee_cast_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -525,7 +638,7 @@ func (x *MediaUserInfo) String() string { func (*MediaUserInfo) ProtoMessage() {} func (x *MediaUserInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[1] + mi := &file_pb_fiee_cast_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -538,7 +651,7 @@ func (x *MediaUserInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaUserInfo.ProtoReflect.Descriptor instead. func (*MediaUserInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{1} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{2} } func (x *MediaUserInfo) GetPlatformUserName() string { @@ -653,6 +766,13 @@ func (x *MediaUserInfo) GetReleasedPostTotal() int32 { return 0 } +func (x *MediaUserInfo) GetAsInfo() *AsInfo { + if x != nil { + return x.AsInfo + } + return nil +} + type MediaUserListResp struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -665,7 +785,7 @@ type MediaUserListResp struct { func (x *MediaUserListResp) Reset() { *x = MediaUserListResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[2] + mi := &file_pb_fiee_cast_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -678,7 +798,7 @@ func (x *MediaUserListResp) String() string { func (*MediaUserListResp) ProtoMessage() {} func (x *MediaUserListResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[2] + mi := &file_pb_fiee_cast_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -691,7 +811,7 @@ func (x *MediaUserListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaUserListResp.ProtoReflect.Descriptor instead. func (*MediaUserListResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{2} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{3} } func (x *MediaUserListResp) GetData() []*MediaUserInfo { @@ -729,7 +849,7 @@ type UpdateMediaAccountReq struct { func (x *UpdateMediaAccountReq) Reset() { *x = UpdateMediaAccountReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[3] + mi := &file_pb_fiee_cast_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -742,7 +862,7 @@ func (x *UpdateMediaAccountReq) String() string { func (*UpdateMediaAccountReq) ProtoMessage() {} func (x *UpdateMediaAccountReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[3] + mi := &file_pb_fiee_cast_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -755,7 +875,7 @@ func (x *UpdateMediaAccountReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateMediaAccountReq.ProtoReflect.Descriptor instead. func (*UpdateMediaAccountReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{3} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{4} } func (x *UpdateMediaAccountReq) GetPlatformID() PlatformIDENUM { @@ -846,7 +966,7 @@ type UpdateMediaAccountResp struct { func (x *UpdateMediaAccountResp) Reset() { *x = UpdateMediaAccountResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[4] + mi := &file_pb_fiee_cast_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -859,7 +979,7 @@ func (x *UpdateMediaAccountResp) String() string { func (*UpdateMediaAccountResp) ProtoMessage() {} func (x *UpdateMediaAccountResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[4] + mi := &file_pb_fiee_cast_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -872,7 +992,7 @@ func (x *UpdateMediaAccountResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateMediaAccountResp.ProtoReflect.Descriptor instead. func (*UpdateMediaAccountResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{4} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{5} } func (x *UpdateMediaAccountResp) GetMediaAccountUuid() string { @@ -894,7 +1014,7 @@ type UnbindManagerReq struct { func (x *UnbindManagerReq) Reset() { *x = UnbindManagerReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[5] + mi := &file_pb_fiee_cast_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -907,7 +1027,7 @@ func (x *UnbindManagerReq) String() string { func (*UnbindManagerReq) ProtoMessage() {} func (x *UnbindManagerReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[5] + mi := &file_pb_fiee_cast_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -920,7 +1040,7 @@ func (x *UnbindManagerReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UnbindManagerReq.ProtoReflect.Descriptor instead. func (*UnbindManagerReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{5} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{6} } func (x *UnbindManagerReq) GetMediaAccountUuid() string { @@ -941,7 +1061,7 @@ type UnbindManagerResp struct { func (x *UnbindManagerResp) Reset() { *x = UnbindManagerResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[6] + mi := &file_pb_fiee_cast_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -954,7 +1074,7 @@ func (x *UnbindManagerResp) String() string { func (*UnbindManagerResp) ProtoMessage() {} func (x *UnbindManagerResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[6] + mi := &file_pb_fiee_cast_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -967,7 +1087,7 @@ func (x *UnbindManagerResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UnbindManagerResp.ProtoReflect.Descriptor instead. func (*UnbindManagerResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{6} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{7} } func (x *UnbindManagerResp) GetOldBindArtistUuid() string { @@ -990,7 +1110,7 @@ type BindManagerReq struct { func (x *BindManagerReq) Reset() { *x = BindManagerReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[7] + mi := &file_pb_fiee_cast_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1003,7 +1123,7 @@ func (x *BindManagerReq) String() string { func (*BindManagerReq) ProtoMessage() {} func (x *BindManagerReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[7] + mi := &file_pb_fiee_cast_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1016,7 +1136,7 @@ func (x *BindManagerReq) ProtoReflect() protoreflect.Message { // Deprecated: Use BindManagerReq.ProtoReflect.Descriptor instead. func (*BindManagerReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{7} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{8} } func (x *BindManagerReq) GetMediaAccountUuid() string { @@ -1075,7 +1195,7 @@ type UpdateWorkImageReq struct { func (x *UpdateWorkImageReq) Reset() { *x = UpdateWorkImageReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[8] + mi := &file_pb_fiee_cast_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1088,7 +1208,7 @@ func (x *UpdateWorkImageReq) String() string { func (*UpdateWorkImageReq) ProtoMessage() {} func (x *UpdateWorkImageReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[8] + mi := &file_pb_fiee_cast_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1101,7 +1221,7 @@ func (x *UpdateWorkImageReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkImageReq.ProtoReflect.Descriptor instead. func (*UpdateWorkImageReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{8} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{9} } func (x *UpdateWorkImageReq) GetTitle() string { @@ -1283,7 +1403,7 @@ type UpdateWorkImageResp struct { func (x *UpdateWorkImageResp) Reset() { *x = UpdateWorkImageResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[9] + mi := &file_pb_fiee_cast_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1296,7 +1416,7 @@ func (x *UpdateWorkImageResp) String() string { func (*UpdateWorkImageResp) ProtoMessage() {} func (x *UpdateWorkImageResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[9] + mi := &file_pb_fiee_cast_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1309,7 +1429,7 @@ func (x *UpdateWorkImageResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkImageResp.ProtoReflect.Descriptor instead. func (*UpdateWorkImageResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{9} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{10} } func (x *UpdateWorkImageResp) GetWorkUuid() string { @@ -1335,7 +1455,7 @@ type PublishConfig struct { func (x *PublishConfig) Reset() { *x = PublishConfig{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[10] + mi := &file_pb_fiee_cast_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1348,7 +1468,7 @@ func (x *PublishConfig) String() string { func (*PublishConfig) ProtoMessage() {} func (x *PublishConfig) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[10] + mi := &file_pb_fiee_cast_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1361,7 +1481,7 @@ func (x *PublishConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use PublishConfig.ProtoReflect.Descriptor instead. func (*PublishConfig) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{10} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{11} } func (x *PublishConfig) GetForbidComment() uint32 { @@ -1440,7 +1560,7 @@ type UpdateWorkVideoReq struct { func (x *UpdateWorkVideoReq) Reset() { *x = UpdateWorkVideoReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[11] + mi := &file_pb_fiee_cast_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1453,7 +1573,7 @@ func (x *UpdateWorkVideoReq) String() string { func (*UpdateWorkVideoReq) ProtoMessage() {} func (x *UpdateWorkVideoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[11] + mi := &file_pb_fiee_cast_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1466,7 +1586,7 @@ func (x *UpdateWorkVideoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkVideoReq.ProtoReflect.Descriptor instead. func (*UpdateWorkVideoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{11} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{12} } func (x *UpdateWorkVideoReq) GetTitle() string { @@ -1641,7 +1761,7 @@ type UpdateWorkVideoResp struct { func (x *UpdateWorkVideoResp) Reset() { *x = UpdateWorkVideoResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[12] + mi := &file_pb_fiee_cast_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1654,7 +1774,7 @@ func (x *UpdateWorkVideoResp) String() string { func (*UpdateWorkVideoResp) ProtoMessage() {} func (x *UpdateWorkVideoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[12] + mi := &file_pb_fiee_cast_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1667,7 +1787,7 @@ func (x *UpdateWorkVideoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkVideoResp.ProtoReflect.Descriptor instead. func (*UpdateWorkVideoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{12} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{13} } func (x *UpdateWorkVideoResp) GetWorkUuid() string { @@ -1690,7 +1810,7 @@ type MediaInfoReq struct { func (x *MediaInfoReq) Reset() { *x = MediaInfoReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[13] + mi := &file_pb_fiee_cast_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1703,7 +1823,7 @@ func (x *MediaInfoReq) String() string { func (*MediaInfoReq) ProtoMessage() {} func (x *MediaInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[13] + mi := &file_pb_fiee_cast_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1716,7 +1836,7 @@ func (x *MediaInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaInfoReq.ProtoReflect.Descriptor instead. func (*MediaInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{13} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{14} } func (x *MediaInfoReq) GetArtistUuid() string { @@ -1751,7 +1871,7 @@ type MediaInfoResp struct { func (x *MediaInfoResp) Reset() { *x = MediaInfoResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[14] + mi := &file_pb_fiee_cast_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1764,7 +1884,7 @@ func (x *MediaInfoResp) String() string { func (*MediaInfoResp) ProtoMessage() {} func (x *MediaInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[14] + mi := &file_pb_fiee_cast_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1777,7 +1897,7 @@ func (x *MediaInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaInfoResp.ProtoReflect.Descriptor instead. func (*MediaInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{14} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{15} } func (x *MediaInfoResp) GetInfo() *MediaUserInfo { @@ -1799,7 +1919,7 @@ type MediaInfoByPlatformReq struct { func (x *MediaInfoByPlatformReq) Reset() { *x = MediaInfoByPlatformReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[15] + mi := &file_pb_fiee_cast_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1812,7 +1932,7 @@ func (x *MediaInfoByPlatformReq) String() string { func (*MediaInfoByPlatformReq) ProtoMessage() {} func (x *MediaInfoByPlatformReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[15] + mi := &file_pb_fiee_cast_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1825,7 +1945,7 @@ func (x *MediaInfoByPlatformReq) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaInfoByPlatformReq.ProtoReflect.Descriptor instead. func (*MediaInfoByPlatformReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{15} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{16} } func (x *MediaInfoByPlatformReq) GetArtistUuid() string { @@ -1853,7 +1973,7 @@ type MediaInfoByPlatformResp struct { func (x *MediaInfoByPlatformResp) Reset() { *x = MediaInfoByPlatformResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[16] + mi := &file_pb_fiee_cast_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1866,7 +1986,7 @@ func (x *MediaInfoByPlatformResp) String() string { func (*MediaInfoByPlatformResp) ProtoMessage() {} func (x *MediaInfoByPlatformResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[16] + mi := &file_pb_fiee_cast_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1879,7 +1999,7 @@ func (x *MediaInfoByPlatformResp) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaInfoByPlatformResp.ProtoReflect.Descriptor instead. func (*MediaInfoByPlatformResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{16} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{17} } func (x *MediaInfoByPlatformResp) GetInfo() *MediaUserInfo { @@ -1914,14 +2034,23 @@ type WorkListReq struct { TiktokStatus uint32 `protobuf:"varint,18,opt,name=tiktokStatus,proto3" json:"tiktokStatus"` InsStatus uint32 `protobuf:"varint,19,opt,name=insStatus,proto3" json:"insStatus"` DmStatus uint32 `protobuf:"varint,20,opt,name=dmStatus,proto3" json:"dmStatus"` - YoutubeStatus uint32 `protobuf:"varint,21,opt,name=youtubeStatus,proto3" json:"youtubeStatus"` - BlueskyStatus uint32 `protobuf:"varint,22,opt,name=blueskyStatus,proto3" json:"blueskyStatus"` + StartTime1 string `protobuf:"bytes,21,opt,name=startTime1,proto3" json:"startTime1"` + EndTime1 string `protobuf:"bytes,22,opt,name=endTime1,proto3" json:"endTime1"` + StartTime4 string `protobuf:"bytes,23,opt,name=startTime4,proto3" json:"startTime4"` + EndTime4 string `protobuf:"bytes,24,opt,name=endTime4,proto3" json:"endTime4"` + StartTime9 string `protobuf:"bytes,25,opt,name=startTime9,proto3" json:"startTime9"` + EndTime9 string `protobuf:"bytes,26,opt,name=endTime9,proto3" json:"endTime9"` + StartTime6 string `protobuf:"bytes,27,opt,name=startTime6,proto3" json:"startTime6"` + EndTime6 string `protobuf:"bytes,28,opt,name=endTime6,proto3" json:"endTime6"` + NeedPublishMediaID bool `protobuf:"varint,29,opt,name=NeedPublishMediaID,proto3" json:"NeedPublishMediaID"` + YoutubeStatus uint32 `protobuf:"varint,30,opt,name=youtubeStatus,proto3" json:"youtubeStatus"` + BlueskyStatus uint32 `protobuf:"varint,31,opt,name=blueskyStatus,proto3" json:"blueskyStatus"` } func (x *WorkListReq) Reset() { *x = WorkListReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[17] + mi := &file_pb_fiee_cast_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1934,7 +2063,7 @@ func (x *WorkListReq) String() string { func (*WorkListReq) ProtoMessage() {} func (x *WorkListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[17] + mi := &file_pb_fiee_cast_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1947,7 +2076,7 @@ func (x *WorkListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkListReq.ProtoReflect.Descriptor instead. func (*WorkListReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{17} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{18} } func (x *WorkListReq) GetArtistVal() string { @@ -2090,6 +2219,69 @@ func (x *WorkListReq) GetDmStatus() uint32 { return 0 } +func (x *WorkListReq) GetStartTime1() string { + if x != nil { + return x.StartTime1 + } + return "" +} + +func (x *WorkListReq) GetEndTime1() string { + if x != nil { + return x.EndTime1 + } + return "" +} + +func (x *WorkListReq) GetStartTime4() string { + if x != nil { + return x.StartTime4 + } + return "" +} + +func (x *WorkListReq) GetEndTime4() string { + if x != nil { + return x.EndTime4 + } + return "" +} + +func (x *WorkListReq) GetStartTime9() string { + if x != nil { + return x.StartTime9 + } + return "" +} + +func (x *WorkListReq) GetEndTime9() string { + if x != nil { + return x.EndTime9 + } + return "" +} + +func (x *WorkListReq) GetStartTime6() string { + if x != nil { + return x.StartTime6 + } + return "" +} + +func (x *WorkListReq) GetEndTime6() string { + if x != nil { + return x.EndTime6 + } + return "" +} + +func (x *WorkListReq) GetNeedPublishMediaID() bool { + if x != nil { + return x.NeedPublishMediaID + } + return false +} + func (x *WorkListReq) GetYoutubeStatus() uint32 { if x != nil { return x.YoutubeStatus @@ -2116,7 +2308,7 @@ type WorkListResp struct { func (x *WorkListResp) Reset() { *x = WorkListResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[18] + mi := &file_pb_fiee_cast_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2129,7 +2321,7 @@ func (x *WorkListResp) String() string { func (*WorkListResp) ProtoMessage() {} func (x *WorkListResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[18] + mi := &file_pb_fiee_cast_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2142,7 +2334,7 @@ func (x *WorkListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkListResp.ProtoReflect.Descriptor instead. func (*WorkListResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{18} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{19} } func (x *WorkListResp) GetData() []*WorkListResp_Info { @@ -2170,7 +2362,7 @@ type WorkDetailReq struct { func (x *WorkDetailReq) Reset() { *x = WorkDetailReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[19] + mi := &file_pb_fiee_cast_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2183,7 +2375,7 @@ func (x *WorkDetailReq) String() string { func (*WorkDetailReq) ProtoMessage() {} func (x *WorkDetailReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[19] + mi := &file_pb_fiee_cast_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2196,7 +2388,7 @@ func (x *WorkDetailReq) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkDetailReq.ProtoReflect.Descriptor instead. func (*WorkDetailReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{19} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{20} } func (x *WorkDetailReq) GetWorkUuid() string { @@ -2224,7 +2416,7 @@ type WorkLogInfo struct { func (x *WorkLogInfo) Reset() { *x = WorkLogInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[20] + mi := &file_pb_fiee_cast_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2237,7 +2429,7 @@ func (x *WorkLogInfo) String() string { func (*WorkLogInfo) ProtoMessage() {} func (x *WorkLogInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[20] + mi := &file_pb_fiee_cast_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2250,7 +2442,7 @@ func (x *WorkLogInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkLogInfo.ProtoReflect.Descriptor instead. func (*WorkLogInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{20} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{21} } func (x *WorkLogInfo) GetWorkUuid() string { @@ -2340,13 +2532,14 @@ type WorkDetailResp struct { // uint32 dmStatus = 24; NeedPlatformIDs []int32 `protobuf:"varint,25,rep,packed,name=needPlatformIDs,proto3" json:"needPlatformIDs"` ArtistSubNum string `protobuf:"bytes,26,opt,name=artistSubNum,proto3" json:"artistSubNum"` - PublishConfig5 *PublishConfig `protobuf:"bytes,27,opt,name=publishConfig5,proto3" json:"publishConfig5"` + ScriptInfo string `protobuf:"bytes,27,opt,name=scriptInfo,proto3" json:"scriptInfo"` + PublishConfig5 *PublishConfig `protobuf:"bytes,28,opt,name=publishConfig5,proto3" json:"publishConfig5"` } func (x *WorkDetailResp) Reset() { *x = WorkDetailResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[21] + mi := &file_pb_fiee_cast_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2359,7 +2552,7 @@ func (x *WorkDetailResp) String() string { func (*WorkDetailResp) ProtoMessage() {} func (x *WorkDetailResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[21] + mi := &file_pb_fiee_cast_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2372,7 +2565,7 @@ func (x *WorkDetailResp) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkDetailResp.ProtoReflect.Descriptor instead. func (*WorkDetailResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{21} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{22} } func (x *WorkDetailResp) GetWorkUuid() string { @@ -2536,6 +2729,13 @@ func (x *WorkDetailResp) GetArtistSubNum() string { return "" } +func (x *WorkDetailResp) GetScriptInfo() string { + if x != nil { + return x.ScriptInfo + } + return "" +} + func (x *WorkDetailResp) GetPublishConfig5() *PublishConfig { if x != nil { return x.PublishConfig5 @@ -2548,20 +2748,22 @@ type UpdateStatusReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` - WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` - ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` - ConfirmRemark string `protobuf:"bytes,4,opt,name=confirmRemark,proto3" json:"confirmRemark"` - ConfirmStatus uint32 `protobuf:"varint,5,opt,name=confirmStatus,proto3" json:"confirmStatus"` - ApprovalReply string `protobuf:"bytes,6,opt,name=approvalReply,proto3" json:"approvalReply"` - AutoPublish AutoPublishENUM `protobuf:"varint,7,opt,name=autoPublish,proto3,enum=Cast.AutoPublishENUM" json:"autoPublish"` - CostType uint32 `protobuf:"varint,8,opt,name=costType,proto3" json:"costType"` + WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` + WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` + ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` + ConfirmRemark string `protobuf:"bytes,4,opt,name=confirmRemark,proto3" json:"confirmRemark"` + ConfirmStatus uint32 `protobuf:"varint,5,opt,name=confirmStatus,proto3" json:"confirmStatus"` + ApprovalReply string `protobuf:"bytes,6,opt,name=approvalReply,proto3" json:"approvalReply"` + AutoPublish AutoPublishENUM `protobuf:"varint,7,opt,name=autoPublish,proto3,enum=Cast.AutoPublishENUM" json:"autoPublish"` + CostType uint32 `protobuf:"varint,8,opt,name=costType,proto3" json:"costType"` + ConfirmFailType ConfirmFailENUM `protobuf:"varint,9,opt,name=confirmFailType,proto3,enum=Cast.ConfirmFailENUM" json:"confirmFailType"` + ApprovalTime string `protobuf:"bytes,10,opt,name=approvalTime,proto3" json:"approvalTime"` } func (x *UpdateStatusReq) Reset() { *x = UpdateStatusReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[22] + mi := &file_pb_fiee_cast_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2574,7 +2776,7 @@ func (x *UpdateStatusReq) String() string { func (*UpdateStatusReq) ProtoMessage() {} func (x *UpdateStatusReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[22] + mi := &file_pb_fiee_cast_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2587,7 +2789,7 @@ func (x *UpdateStatusReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateStatusReq.ProtoReflect.Descriptor instead. func (*UpdateStatusReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{22} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{23} } func (x *UpdateStatusReq) GetWorkAction() WorkActionENUM { @@ -2646,6 +2848,20 @@ func (x *UpdateStatusReq) GetCostType() uint32 { return 0 } +func (x *UpdateStatusReq) GetConfirmFailType() ConfirmFailENUM { + if x != nil { + return x.ConfirmFailType + } + return ConfirmFailENUM_ConfirmFailENUM_NO +} + +func (x *UpdateStatusReq) GetApprovalTime() string { + if x != nil { + return x.ApprovalTime + } + return "" +} + type MediaAccountsReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2657,7 +2873,7 @@ type MediaAccountsReq struct { func (x *MediaAccountsReq) Reset() { *x = MediaAccountsReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[23] + mi := &file_pb_fiee_cast_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2670,7 +2886,7 @@ func (x *MediaAccountsReq) String() string { func (*MediaAccountsReq) ProtoMessage() {} func (x *MediaAccountsReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[23] + mi := &file_pb_fiee_cast_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2683,7 +2899,7 @@ func (x *MediaAccountsReq) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaAccountsReq.ProtoReflect.Descriptor instead. func (*MediaAccountsReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{23} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{24} } func (x *MediaAccountsReq) GetArtistUuid() string { @@ -2704,7 +2920,7 @@ type MediaAccountsResp struct { func (x *MediaAccountsResp) Reset() { *x = MediaAccountsResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[24] + mi := &file_pb_fiee_cast_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2717,7 +2933,7 @@ func (x *MediaAccountsResp) String() string { func (*MediaAccountsResp) ProtoMessage() {} func (x *MediaAccountsResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[24] + mi := &file_pb_fiee_cast_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2730,7 +2946,7 @@ func (x *MediaAccountsResp) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaAccountsResp.ProtoReflect.Descriptor instead. func (*MediaAccountsResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{24} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{25} } func (x *MediaAccountsResp) GetData() []*MediaAccountsResp_Info { @@ -2753,7 +2969,7 @@ type MediaWorksReq struct { func (x *MediaWorksReq) Reset() { *x = MediaWorksReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[25] + mi := &file_pb_fiee_cast_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2766,7 +2982,7 @@ func (x *MediaWorksReq) String() string { func (*MediaWorksReq) ProtoMessage() {} func (x *MediaWorksReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[25] + mi := &file_pb_fiee_cast_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2779,7 +2995,7 @@ func (x *MediaWorksReq) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaWorksReq.ProtoReflect.Descriptor instead. func (*MediaWorksReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{25} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{26} } func (x *MediaWorksReq) GetMediaAccountUuid() string { @@ -2815,7 +3031,7 @@ type MediaWorksResp struct { func (x *MediaWorksResp) Reset() { *x = MediaWorksResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[26] + mi := &file_pb_fiee_cast_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2828,7 +3044,7 @@ func (x *MediaWorksResp) String() string { func (*MediaWorksResp) ProtoMessage() {} func (x *MediaWorksResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[26] + mi := &file_pb_fiee_cast_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2841,7 +3057,7 @@ func (x *MediaWorksResp) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaWorksResp.ProtoReflect.Descriptor instead. func (*MediaWorksResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{26} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{27} } func (x *MediaWorksResp) GetCount() int64 { @@ -2869,7 +3085,7 @@ type PublishReq struct { func (x *PublishReq) Reset() { *x = PublishReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[27] + mi := &file_pb_fiee_cast_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2882,7 +3098,7 @@ func (x *PublishReq) String() string { func (*PublishReq) ProtoMessage() {} func (x *PublishReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[27] + mi := &file_pb_fiee_cast_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2895,7 +3111,7 @@ func (x *PublishReq) ProtoReflect() protoreflect.Message { // Deprecated: Use PublishReq.ProtoReflect.Descriptor instead. func (*PublishReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{27} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{28} } func (x *PublishReq) GetWorkUuids() []string { @@ -2916,7 +3132,7 @@ type PublishResp struct { func (x *PublishResp) Reset() { *x = PublishResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[28] + mi := &file_pb_fiee_cast_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2929,7 +3145,7 @@ func (x *PublishResp) String() string { func (*PublishResp) ProtoMessage() {} func (x *PublishResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[28] + mi := &file_pb_fiee_cast_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2942,7 +3158,7 @@ func (x *PublishResp) ProtoReflect() protoreflect.Message { // Deprecated: Use PublishResp.ProtoReflect.Descriptor instead. func (*PublishResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{28} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{29} } func (x *PublishResp) GetData() []*PublishResp_Info { @@ -2965,7 +3181,7 @@ type RePublishReq struct { func (x *RePublishReq) Reset() { *x = RePublishReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[29] + mi := &file_pb_fiee_cast_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2978,7 +3194,7 @@ func (x *RePublishReq) String() string { func (*RePublishReq) ProtoMessage() {} func (x *RePublishReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[29] + mi := &file_pb_fiee_cast_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2991,7 +3207,7 @@ func (x *RePublishReq) ProtoReflect() protoreflect.Message { // Deprecated: Use RePublishReq.ProtoReflect.Descriptor instead. func (*RePublishReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{29} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{30} } func (x *RePublishReq) GetWorkUuid() string { @@ -3022,12 +3238,13 @@ type RePublishResp struct { ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` WorkCategory int32 `protobuf:"varint,2,opt,name=workCategory,proto3" json:"workCategory"` + WorkUuid string `protobuf:"bytes,3,opt,name=workUuid,proto3" json:"workUuid"` } func (x *RePublishResp) Reset() { *x = RePublishResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[30] + mi := &file_pb_fiee_cast_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3040,7 +3257,7 @@ func (x *RePublishResp) String() string { func (*RePublishResp) ProtoMessage() {} func (x *RePublishResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[30] + mi := &file_pb_fiee_cast_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3053,7 +3270,7 @@ func (x *RePublishResp) ProtoReflect() protoreflect.Message { // Deprecated: Use RePublishResp.ProtoReflect.Descriptor instead. func (*RePublishResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{30} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{31} } func (x *RePublishResp) GetArtistUuid() string { @@ -3070,6 +3287,13 @@ func (x *RePublishResp) GetWorkCategory() int32 { return 0 } +func (x *RePublishResp) GetWorkUuid() string { + if x != nil { + return x.WorkUuid + } + return "" +} + type DelWorkReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3081,7 +3305,7 @@ type DelWorkReq struct { func (x *DelWorkReq) Reset() { *x = DelWorkReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[31] + mi := &file_pb_fiee_cast_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3094,7 +3318,7 @@ func (x *DelWorkReq) String() string { func (*DelWorkReq) ProtoMessage() {} func (x *DelWorkReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[31] + mi := &file_pb_fiee_cast_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3107,7 +3331,7 @@ func (x *DelWorkReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DelWorkReq.ProtoReflect.Descriptor instead. func (*DelWorkReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{31} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{32} } func (x *DelWorkReq) GetWorkUuid() string { @@ -3128,7 +3352,7 @@ type WorkInfoReq struct { func (x *WorkInfoReq) Reset() { *x = WorkInfoReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[32] + mi := &file_pb_fiee_cast_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3141,7 +3365,7 @@ func (x *WorkInfoReq) String() string { func (*WorkInfoReq) ProtoMessage() {} func (x *WorkInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[32] + mi := &file_pb_fiee_cast_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3154,7 +3378,7 @@ func (x *WorkInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkInfoReq.ProtoReflect.Descriptor instead. func (*WorkInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{32} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{33} } func (x *WorkInfoReq) GetWorkUuid() string { @@ -3180,7 +3404,7 @@ type WorkInfoResp struct { func (x *WorkInfoResp) Reset() { *x = WorkInfoResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[33] + mi := &file_pb_fiee_cast_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3193,7 +3417,7 @@ func (x *WorkInfoResp) String() string { func (*WorkInfoResp) ProtoMessage() {} func (x *WorkInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[33] + mi := &file_pb_fiee_cast_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3206,7 +3430,7 @@ func (x *WorkInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkInfoResp.ProtoReflect.Descriptor instead. func (*WorkInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{33} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{34} } func (x *WorkInfoResp) GetWorkStatus() uint32 { @@ -3262,7 +3486,7 @@ type ArtistInfoReq struct { func (x *ArtistInfoReq) Reset() { *x = ArtistInfoReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[34] + mi := &file_pb_fiee_cast_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3275,7 +3499,7 @@ func (x *ArtistInfoReq) String() string { func (*ArtistInfoReq) ProtoMessage() {} func (x *ArtistInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[34] + mi := &file_pb_fiee_cast_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3288,7 +3512,7 @@ func (x *ArtistInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistInfoReq.ProtoReflect.Descriptor instead. func (*ArtistInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{34} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{35} } func (x *ArtistInfoReq) GetArtistUuid() string { @@ -3307,12 +3531,14 @@ type ArtistInfoResp struct { YouTubeEffectiveCount uint32 `protobuf:"varint,2,opt,name=YouTubeEffectiveCount,proto3" json:"YouTubeEffectiveCount"` InsEffectiveCount uint32 `protobuf:"varint,3,opt,name=InsEffectiveCount,proto3" json:"InsEffectiveCount"` DMEffectiveCount uint32 `protobuf:"varint,4,opt,name=DMEffectiveCount,proto3" json:"DMEffectiveCount"` + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` + SubNum string `protobuf:"bytes,6,opt,name=subNum,proto3" json:"subNum"` } func (x *ArtistInfoResp) Reset() { *x = ArtistInfoResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[35] + mi := &file_pb_fiee_cast_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3325,7 +3551,7 @@ func (x *ArtistInfoResp) String() string { func (*ArtistInfoResp) ProtoMessage() {} func (x *ArtistInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[35] + mi := &file_pb_fiee_cast_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3338,7 +3564,7 @@ func (x *ArtistInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistInfoResp.ProtoReflect.Descriptor instead. func (*ArtistInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{35} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{36} } func (x *ArtistInfoResp) GetTikTokEffectiveCount() uint32 { @@ -3369,6 +3595,20 @@ func (x *ArtistInfoResp) GetDMEffectiveCount() uint32 { return 0 } +func (x *ArtistInfoResp) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +func (x *ArtistInfoResp) GetSubNum() string { + if x != nil { + return x.SubNum + } + return "" +} + type ImportWorkBatchReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -3380,7 +3620,7 @@ type ImportWorkBatchReq struct { func (x *ImportWorkBatchReq) Reset() { *x = ImportWorkBatchReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[36] + mi := &file_pb_fiee_cast_proto_msgTypes[37] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3393,7 +3633,7 @@ func (x *ImportWorkBatchReq) String() string { func (*ImportWorkBatchReq) ProtoMessage() {} func (x *ImportWorkBatchReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[36] + mi := &file_pb_fiee_cast_proto_msgTypes[37] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3406,7 +3646,7 @@ func (x *ImportWorkBatchReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ImportWorkBatchReq.ProtoReflect.Descriptor instead. func (*ImportWorkBatchReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{36} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{37} } func (x *ImportWorkBatchReq) GetImageWorks() []*UpdateWorkImageReq { @@ -3429,7 +3669,7 @@ type ImportWorkBatchResp struct { func (x *ImportWorkBatchResp) Reset() { *x = ImportWorkBatchResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[37] + mi := &file_pb_fiee_cast_proto_msgTypes[38] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3442,7 +3682,7 @@ func (x *ImportWorkBatchResp) String() string { func (*ImportWorkBatchResp) ProtoMessage() {} func (x *ImportWorkBatchResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[37] + mi := &file_pb_fiee_cast_proto_msgTypes[38] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3455,7 +3695,7 @@ func (x *ImportWorkBatchResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ImportWorkBatchResp.ProtoReflect.Descriptor instead. func (*ImportWorkBatchResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{37} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{38} } func (x *ImportWorkBatchResp) GetImageWorks() []*UpdateWorkImageReq { @@ -3498,7 +3738,7 @@ type PlatformInfo struct { func (x *PlatformInfo) Reset() { *x = PlatformInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[38] + mi := &file_pb_fiee_cast_proto_msgTypes[39] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3511,7 +3751,7 @@ func (x *PlatformInfo) String() string { func (*PlatformInfo) ProtoMessage() {} func (x *PlatformInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[38] + mi := &file_pb_fiee_cast_proto_msgTypes[39] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3524,7 +3764,7 @@ func (x *PlatformInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use PlatformInfo.ProtoReflect.Descriptor instead. func (*PlatformInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{38} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{39} } func (x *PlatformInfo) GetWorkUuid() string { @@ -3601,7 +3841,7 @@ type UpdateWorkPlatformInfoReq struct { func (x *UpdateWorkPlatformInfoReq) Reset() { *x = UpdateWorkPlatformInfoReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[39] + mi := &file_pb_fiee_cast_proto_msgTypes[40] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3614,7 +3854,7 @@ func (x *UpdateWorkPlatformInfoReq) String() string { func (*UpdateWorkPlatformInfoReq) ProtoMessage() {} func (x *UpdateWorkPlatformInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[39] + mi := &file_pb_fiee_cast_proto_msgTypes[40] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3627,7 +3867,7 @@ func (x *UpdateWorkPlatformInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkPlatformInfoReq.ProtoReflect.Descriptor instead. func (*UpdateWorkPlatformInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{39} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{40} } func (x *UpdateWorkPlatformInfoReq) GetPlatformInfoData() []*PlatformInfo { @@ -3648,7 +3888,7 @@ type UpdateWorkPlatformInfoResp struct { func (x *UpdateWorkPlatformInfoResp) Reset() { *x = UpdateWorkPlatformInfoResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[40] + mi := &file_pb_fiee_cast_proto_msgTypes[41] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3661,7 +3901,7 @@ func (x *UpdateWorkPlatformInfoResp) String() string { func (*UpdateWorkPlatformInfoResp) ProtoMessage() {} func (x *UpdateWorkPlatformInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[40] + mi := &file_pb_fiee_cast_proto_msgTypes[41] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3674,7 +3914,7 @@ func (x *UpdateWorkPlatformInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkPlatformInfoResp.ProtoReflect.Descriptor instead. func (*UpdateWorkPlatformInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{40} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{41} } func (x *UpdateWorkPlatformInfoResp) GetWorkUuid() []string { @@ -3698,7 +3938,7 @@ type UpdateWorkPublishLogReq struct { func (x *UpdateWorkPublishLogReq) Reset() { *x = UpdateWorkPublishLogReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[41] + mi := &file_pb_fiee_cast_proto_msgTypes[42] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3711,7 +3951,7 @@ func (x *UpdateWorkPublishLogReq) String() string { func (*UpdateWorkPublishLogReq) ProtoMessage() {} func (x *UpdateWorkPublishLogReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[41] + mi := &file_pb_fiee_cast_proto_msgTypes[42] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3724,7 +3964,7 @@ func (x *UpdateWorkPublishLogReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkPublishLogReq.ProtoReflect.Descriptor instead. func (*UpdateWorkPublishLogReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{41} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{42} } func (x *UpdateWorkPublishLogReq) GetWorkUuid() string { @@ -3766,7 +4006,7 @@ type RefreshWorkListReq struct { func (x *RefreshWorkListReq) Reset() { *x = RefreshWorkListReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[42] + mi := &file_pb_fiee_cast_proto_msgTypes[43] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3779,7 +4019,7 @@ func (x *RefreshWorkListReq) String() string { func (*RefreshWorkListReq) ProtoMessage() {} func (x *RefreshWorkListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[42] + mi := &file_pb_fiee_cast_proto_msgTypes[43] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3792,7 +4032,7 @@ func (x *RefreshWorkListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use RefreshWorkListReq.ProtoReflect.Descriptor instead. func (*RefreshWorkListReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{42} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{43} } func (x *RefreshWorkListReq) GetPublishStatus() uint32 { @@ -3813,7 +4053,7 @@ type RefreshWorkListResp struct { func (x *RefreshWorkListResp) Reset() { *x = RefreshWorkListResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[43] + mi := &file_pb_fiee_cast_proto_msgTypes[44] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3826,7 +4066,7 @@ func (x *RefreshWorkListResp) String() string { func (*RefreshWorkListResp) ProtoMessage() {} func (x *RefreshWorkListResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[43] + mi := &file_pb_fiee_cast_proto_msgTypes[44] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3839,7 +4079,7 @@ func (x *RefreshWorkListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use RefreshWorkListResp.ProtoReflect.Descriptor instead. func (*RefreshWorkListResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{43} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{44} } func (x *RefreshWorkListResp) GetData() []*RefreshWorkListResp_Info { @@ -3860,7 +4100,7 @@ type OAuthAccountReq struct { func (x *OAuthAccountReq) Reset() { *x = OAuthAccountReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[44] + mi := &file_pb_fiee_cast_proto_msgTypes[45] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3873,7 +4113,7 @@ func (x *OAuthAccountReq) String() string { func (*OAuthAccountReq) ProtoMessage() {} func (x *OAuthAccountReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[44] + mi := &file_pb_fiee_cast_proto_msgTypes[45] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3886,7 +4126,7 @@ func (x *OAuthAccountReq) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthAccountReq.ProtoReflect.Descriptor instead. func (*OAuthAccountReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{44} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{45} } func (x *OAuthAccountReq) GetMediaAccountUuid() string { @@ -3907,7 +4147,7 @@ type OAuthAccountResp struct { func (x *OAuthAccountResp) Reset() { *x = OAuthAccountResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[45] + mi := &file_pb_fiee_cast_proto_msgTypes[46] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3920,7 +4160,7 @@ func (x *OAuthAccountResp) String() string { func (*OAuthAccountResp) ProtoMessage() {} func (x *OAuthAccountResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[45] + mi := &file_pb_fiee_cast_proto_msgTypes[46] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3933,7 +4173,7 @@ func (x *OAuthAccountResp) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthAccountResp.ProtoReflect.Descriptor instead. func (*OAuthAccountResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{45} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{46} } func (x *OAuthAccountResp) GetUrl() string { @@ -3954,7 +4194,7 @@ type OAuthAccountV2Req struct { func (x *OAuthAccountV2Req) Reset() { *x = OAuthAccountV2Req{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[46] + mi := &file_pb_fiee_cast_proto_msgTypes[47] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -3967,7 +4207,7 @@ func (x *OAuthAccountV2Req) String() string { func (*OAuthAccountV2Req) ProtoMessage() {} func (x *OAuthAccountV2Req) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[46] + mi := &file_pb_fiee_cast_proto_msgTypes[47] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -3980,7 +4220,7 @@ func (x *OAuthAccountV2Req) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthAccountV2Req.ProtoReflect.Descriptor instead. func (*OAuthAccountV2Req) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{46} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{47} } func (x *OAuthAccountV2Req) GetMediaAccountUuid() string { @@ -4004,7 +4244,7 @@ type OAuthAccountV2Resp struct { func (x *OAuthAccountV2Resp) Reset() { *x = OAuthAccountV2Resp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[47] + mi := &file_pb_fiee_cast_proto_msgTypes[48] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4017,7 +4257,7 @@ func (x *OAuthAccountV2Resp) String() string { func (*OAuthAccountV2Resp) ProtoMessage() {} func (x *OAuthAccountV2Resp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[47] + mi := &file_pb_fiee_cast_proto_msgTypes[48] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4030,7 +4270,7 @@ func (x *OAuthAccountV2Resp) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthAccountV2Resp.ProtoReflect.Descriptor instead. func (*OAuthAccountV2Resp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{47} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{48} } func (x *OAuthAccountV2Resp) GetArtistUuid() string { @@ -4074,7 +4314,7 @@ type OAuthYoutubeTokenReq struct { func (x *OAuthYoutubeTokenReq) Reset() { *x = OAuthYoutubeTokenReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[48] + mi := &file_pb_fiee_cast_proto_msgTypes[49] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4087,7 +4327,7 @@ func (x *OAuthYoutubeTokenReq) String() string { func (*OAuthYoutubeTokenReq) ProtoMessage() {} func (x *OAuthYoutubeTokenReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[48] + mi := &file_pb_fiee_cast_proto_msgTypes[49] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4100,7 +4340,7 @@ func (x *OAuthYoutubeTokenReq) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthYoutubeTokenReq.ProtoReflect.Descriptor instead. func (*OAuthYoutubeTokenReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{48} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{49} } func (x *OAuthYoutubeTokenReq) GetMediaAccountUuid() string { @@ -4130,7 +4370,7 @@ type OAuthYoutubeTokenResp struct { func (x *OAuthYoutubeTokenResp) Reset() { *x = OAuthYoutubeTokenResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[49] + mi := &file_pb_fiee_cast_proto_msgTypes[50] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4143,7 +4383,7 @@ func (x *OAuthYoutubeTokenResp) String() string { func (*OAuthYoutubeTokenResp) ProtoMessage() {} func (x *OAuthYoutubeTokenResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[49] + mi := &file_pb_fiee_cast_proto_msgTypes[50] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4156,7 +4396,7 @@ func (x *OAuthYoutubeTokenResp) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthYoutubeTokenResp.ProtoReflect.Descriptor instead. func (*OAuthYoutubeTokenResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{49} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{50} } func (x *OAuthYoutubeTokenResp) GetAccessToken() string { @@ -4193,7 +4433,7 @@ type OAuthCodeToTokenReq struct { func (x *OAuthCodeToTokenReq) Reset() { *x = OAuthCodeToTokenReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[50] + mi := &file_pb_fiee_cast_proto_msgTypes[51] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4206,7 +4446,7 @@ func (x *OAuthCodeToTokenReq) String() string { func (*OAuthCodeToTokenReq) ProtoMessage() {} func (x *OAuthCodeToTokenReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[50] + mi := &file_pb_fiee_cast_proto_msgTypes[51] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4219,7 +4459,7 @@ func (x *OAuthCodeToTokenReq) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthCodeToTokenReq.ProtoReflect.Descriptor instead. func (*OAuthCodeToTokenReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{50} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{51} } func (x *OAuthCodeToTokenReq) GetCode() string { @@ -4252,7 +4492,7 @@ type OAuthCodeToTokenResp struct { func (x *OAuthCodeToTokenResp) Reset() { *x = OAuthCodeToTokenResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[51] + mi := &file_pb_fiee_cast_proto_msgTypes[52] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4265,7 +4505,7 @@ func (x *OAuthCodeToTokenResp) String() string { func (*OAuthCodeToTokenResp) ProtoMessage() {} func (x *OAuthCodeToTokenResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[51] + mi := &file_pb_fiee_cast_proto_msgTypes[52] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4278,7 +4518,7 @@ func (x *OAuthCodeToTokenResp) ProtoReflect() protoreflect.Message { // Deprecated: Use OAuthCodeToTokenResp.ProtoReflect.Descriptor instead. func (*OAuthCodeToTokenResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{51} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{52} } type UpdateOAuthReq struct { @@ -4292,7 +4532,7 @@ type UpdateOAuthReq struct { func (x *UpdateOAuthReq) Reset() { *x = UpdateOAuthReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[52] + mi := &file_pb_fiee_cast_proto_msgTypes[53] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4305,7 +4545,7 @@ func (x *UpdateOAuthReq) String() string { func (*UpdateOAuthReq) ProtoMessage() {} func (x *UpdateOAuthReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[52] + mi := &file_pb_fiee_cast_proto_msgTypes[53] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4318,7 +4558,7 @@ func (x *UpdateOAuthReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateOAuthReq.ProtoReflect.Descriptor instead. func (*UpdateOAuthReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{52} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{53} } func (x *UpdateOAuthReq) GetData() []*UpdateOAuthReq_Info { @@ -4341,7 +4581,7 @@ type RefreshTokenReq struct { func (x *RefreshTokenReq) Reset() { *x = RefreshTokenReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[53] + mi := &file_pb_fiee_cast_proto_msgTypes[54] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4354,7 +4594,7 @@ func (x *RefreshTokenReq) String() string { func (*RefreshTokenReq) ProtoMessage() {} func (x *RefreshTokenReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[53] + mi := &file_pb_fiee_cast_proto_msgTypes[54] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4367,7 +4607,7 @@ func (x *RefreshTokenReq) ProtoReflect() protoreflect.Message { // Deprecated: Use RefreshTokenReq.ProtoReflect.Descriptor instead. func (*RefreshTokenReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{53} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{54} } func (x *RefreshTokenReq) GetRefreshToken() string { @@ -4403,7 +4643,7 @@ type RefreshTokenResp struct { func (x *RefreshTokenResp) Reset() { *x = RefreshTokenResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[54] + mi := &file_pb_fiee_cast_proto_msgTypes[55] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4416,7 +4656,7 @@ func (x *RefreshTokenResp) String() string { func (*RefreshTokenResp) ProtoMessage() {} func (x *RefreshTokenResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[54] + mi := &file_pb_fiee_cast_proto_msgTypes[55] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4429,7 +4669,7 @@ func (x *RefreshTokenResp) ProtoReflect() protoreflect.Message { // Deprecated: Use RefreshTokenResp.ProtoReflect.Descriptor instead. func (*RefreshTokenResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{54} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{55} } func (x *RefreshTokenResp) GetAccessToken() string { @@ -4459,7 +4699,7 @@ type PublishMediaInfoReq struct { func (x *PublishMediaInfoReq) Reset() { *x = PublishMediaInfoReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[55] + mi := &file_pb_fiee_cast_proto_msgTypes[56] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4472,7 +4712,7 @@ func (x *PublishMediaInfoReq) String() string { func (*PublishMediaInfoReq) ProtoMessage() {} func (x *PublishMediaInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[55] + mi := &file_pb_fiee_cast_proto_msgTypes[56] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4485,7 +4725,7 @@ func (x *PublishMediaInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use PublishMediaInfoReq.ProtoReflect.Descriptor instead. func (*PublishMediaInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{55} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{56} } func (x *PublishMediaInfoReq) GetWorkUuid() string { @@ -4523,7 +4763,7 @@ type PublishMediaInfoResp struct { func (x *PublishMediaInfoResp) Reset() { *x = PublishMediaInfoResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[56] + mi := &file_pb_fiee_cast_proto_msgTypes[57] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4536,7 +4776,7 @@ func (x *PublishMediaInfoResp) String() string { func (*PublishMediaInfoResp) ProtoMessage() {} func (x *PublishMediaInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[56] + mi := &file_pb_fiee_cast_proto_msgTypes[57] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4549,7 +4789,7 @@ func (x *PublishMediaInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use PublishMediaInfoResp.ProtoReflect.Descriptor instead. func (*PublishMediaInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{56} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{57} } func (x *PublishMediaInfoResp) GetWorkUuid() string { @@ -4580,6 +4820,53 @@ func (x *PublishMediaInfoResp) GetInfo() string { return "" } +type ToolsReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` +} + +func (x *ToolsReq) Reset() { + *x = ToolsReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[58] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ToolsReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ToolsReq) ProtoMessage() {} + +func (x *ToolsReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[58] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ToolsReq.ProtoReflect.Descriptor instead. +func (*ToolsReq) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{58} +} + +func (x *ToolsReq) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + // 视频脚本相关消息定义 // 更新视频脚本请求 type UpdateVideoScriptReq struct { @@ -4601,7 +4888,7 @@ type UpdateVideoScriptReq struct { func (x *UpdateVideoScriptReq) Reset() { *x = UpdateVideoScriptReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[57] + mi := &file_pb_fiee_cast_proto_msgTypes[59] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4614,7 +4901,7 @@ func (x *UpdateVideoScriptReq) String() string { func (*UpdateVideoScriptReq) ProtoMessage() {} func (x *UpdateVideoScriptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[57] + mi := &file_pb_fiee_cast_proto_msgTypes[59] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4627,7 +4914,7 @@ func (x *UpdateVideoScriptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateVideoScriptReq.ProtoReflect.Descriptor instead. func (*UpdateVideoScriptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{57} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{59} } func (x *UpdateVideoScriptReq) GetUuid() string { @@ -4704,7 +4991,7 @@ type UpdateVideoScriptResp struct { func (x *UpdateVideoScriptResp) Reset() { *x = UpdateVideoScriptResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[58] + mi := &file_pb_fiee_cast_proto_msgTypes[60] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4717,7 +5004,7 @@ func (x *UpdateVideoScriptResp) String() string { func (*UpdateVideoScriptResp) ProtoMessage() {} func (x *UpdateVideoScriptResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[58] + mi := &file_pb_fiee_cast_proto_msgTypes[60] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4730,7 +5017,7 @@ func (x *UpdateVideoScriptResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateVideoScriptResp.ProtoReflect.Descriptor instead. func (*UpdateVideoScriptResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{58} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{60} } func (x *UpdateVideoScriptResp) GetUuid() string { @@ -4752,7 +5039,7 @@ type GetVideoScriptReq struct { func (x *GetVideoScriptReq) Reset() { *x = GetVideoScriptReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[59] + mi := &file_pb_fiee_cast_proto_msgTypes[61] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4765,7 +5052,7 @@ func (x *GetVideoScriptReq) String() string { func (*GetVideoScriptReq) ProtoMessage() {} func (x *GetVideoScriptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[59] + mi := &file_pb_fiee_cast_proto_msgTypes[61] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4778,7 +5065,7 @@ func (x *GetVideoScriptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetVideoScriptReq.ProtoReflect.Descriptor instead. func (*GetVideoScriptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{59} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{61} } func (x *GetVideoScriptReq) GetUuid() string { @@ -4811,7 +5098,7 @@ type GetVideoScriptResp struct { func (x *GetVideoScriptResp) Reset() { *x = GetVideoScriptResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[60] + mi := &file_pb_fiee_cast_proto_msgTypes[62] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4824,7 +5111,7 @@ func (x *GetVideoScriptResp) String() string { func (*GetVideoScriptResp) ProtoMessage() {} func (x *GetVideoScriptResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[60] + mi := &file_pb_fiee_cast_proto_msgTypes[62] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4837,7 +5124,7 @@ func (x *GetVideoScriptResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetVideoScriptResp.ProtoReflect.Descriptor instead. func (*GetVideoScriptResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{60} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{62} } func (x *GetVideoScriptResp) GetUuid() string { @@ -4951,7 +5238,7 @@ type ListVideoScriptsReq struct { func (x *ListVideoScriptsReq) Reset() { *x = ListVideoScriptsReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[61] + mi := &file_pb_fiee_cast_proto_msgTypes[63] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -4964,7 +5251,7 @@ func (x *ListVideoScriptsReq) String() string { func (*ListVideoScriptsReq) ProtoMessage() {} func (x *ListVideoScriptsReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[61] + mi := &file_pb_fiee_cast_proto_msgTypes[63] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -4977,7 +5264,7 @@ func (x *ListVideoScriptsReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ListVideoScriptsReq.ProtoReflect.Descriptor instead. func (*ListVideoScriptsReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{61} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{63} } func (x *ListVideoScriptsReq) GetTitle() string { @@ -5067,7 +5354,7 @@ type VideoScriptInfo struct { func (x *VideoScriptInfo) Reset() { *x = VideoScriptInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[62] + mi := &file_pb_fiee_cast_proto_msgTypes[64] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5080,7 +5367,7 @@ func (x *VideoScriptInfo) String() string { func (*VideoScriptInfo) ProtoMessage() {} func (x *VideoScriptInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[62] + mi := &file_pb_fiee_cast_proto_msgTypes[64] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5093,7 +5380,7 @@ func (x *VideoScriptInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use VideoScriptInfo.ProtoReflect.Descriptor instead. func (*VideoScriptInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{62} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{64} } func (x *VideoScriptInfo) GetUuid() string { @@ -5206,7 +5493,7 @@ type ListVideoScriptsResp struct { func (x *ListVideoScriptsResp) Reset() { *x = ListVideoScriptsResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[63] + mi := &file_pb_fiee_cast_proto_msgTypes[65] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5219,7 +5506,7 @@ func (x *ListVideoScriptsResp) String() string { func (*ListVideoScriptsResp) ProtoMessage() {} func (x *ListVideoScriptsResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[63] + mi := &file_pb_fiee_cast_proto_msgTypes[65] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5232,7 +5519,7 @@ func (x *ListVideoScriptsResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ListVideoScriptsResp.ProtoReflect.Descriptor instead. func (*ListVideoScriptsResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{63} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{65} } func (x *ListVideoScriptsResp) GetData() []*VideoScriptInfo { @@ -5261,7 +5548,7 @@ type DeleteVideoScriptReq struct { func (x *DeleteVideoScriptReq) Reset() { *x = DeleteVideoScriptReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[64] + mi := &file_pb_fiee_cast_proto_msgTypes[66] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5274,7 +5561,7 @@ func (x *DeleteVideoScriptReq) String() string { func (*DeleteVideoScriptReq) ProtoMessage() {} func (x *DeleteVideoScriptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[64] + mi := &file_pb_fiee_cast_proto_msgTypes[66] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5287,7 +5574,7 @@ func (x *DeleteVideoScriptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteVideoScriptReq.ProtoReflect.Descriptor instead. func (*DeleteVideoScriptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{64} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{66} } func (x *DeleteVideoScriptReq) GetUuid() string { @@ -5308,7 +5595,7 @@ type UpdateVideoScriptBatchReq struct { func (x *UpdateVideoScriptBatchReq) Reset() { *x = UpdateVideoScriptBatchReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[65] + mi := &file_pb_fiee_cast_proto_msgTypes[67] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5321,7 +5608,7 @@ func (x *UpdateVideoScriptBatchReq) String() string { func (*UpdateVideoScriptBatchReq) ProtoMessage() {} func (x *UpdateVideoScriptBatchReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[65] + mi := &file_pb_fiee_cast_proto_msgTypes[67] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5334,7 +5621,7 @@ func (x *UpdateVideoScriptBatchReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateVideoScriptBatchReq.ProtoReflect.Descriptor instead. func (*UpdateVideoScriptBatchReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{65} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{67} } func (x *UpdateVideoScriptBatchReq) GetData() []*VideoScriptInfo { @@ -5357,7 +5644,7 @@ type UpdateVideoScriptBatchResp struct { func (x *UpdateVideoScriptBatchResp) Reset() { *x = UpdateVideoScriptBatchResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[66] + mi := &file_pb_fiee_cast_proto_msgTypes[68] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5370,7 +5657,7 @@ func (x *UpdateVideoScriptBatchResp) String() string { func (*UpdateVideoScriptBatchResp) ProtoMessage() {} func (x *UpdateVideoScriptBatchResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[66] + mi := &file_pb_fiee_cast_proto_msgTypes[68] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5383,7 +5670,7 @@ func (x *UpdateVideoScriptBatchResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateVideoScriptBatchResp.ProtoReflect.Descriptor instead. func (*UpdateVideoScriptBatchResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{66} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{68} } func (x *UpdateVideoScriptBatchResp) GetData() []*VideoScriptInfo { @@ -5421,7 +5708,7 @@ type UpdateScriptStatusReq struct { func (x *UpdateScriptStatusReq) Reset() { *x = UpdateScriptStatusReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[67] + mi := &file_pb_fiee_cast_proto_msgTypes[69] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5434,7 +5721,7 @@ func (x *UpdateScriptStatusReq) String() string { func (*UpdateScriptStatusReq) ProtoMessage() {} func (x *UpdateScriptStatusReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[67] + mi := &file_pb_fiee_cast_proto_msgTypes[69] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5447,7 +5734,7 @@ func (x *UpdateScriptStatusReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateScriptStatusReq.ProtoReflect.Descriptor instead. func (*UpdateScriptStatusReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{67} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{69} } func (x *UpdateScriptStatusReq) GetWorkAction() WorkActionENUM { @@ -5491,7 +5778,7 @@ type SetLayoutReq struct { func (x *SetLayoutReq) Reset() { *x = SetLayoutReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[68] + mi := &file_pb_fiee_cast_proto_msgTypes[70] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5504,7 +5791,7 @@ func (x *SetLayoutReq) String() string { func (*SetLayoutReq) ProtoMessage() {} func (x *SetLayoutReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[68] + mi := &file_pb_fiee_cast_proto_msgTypes[70] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5517,7 +5804,7 @@ func (x *SetLayoutReq) ProtoReflect() protoreflect.Message { // Deprecated: Use SetLayoutReq.ProtoReflect.Descriptor instead. func (*SetLayoutReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{68} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{70} } func (x *SetLayoutReq) GetUserID() string { @@ -5553,7 +5840,7 @@ type GetLayoutReq struct { func (x *GetLayoutReq) Reset() { *x = GetLayoutReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[69] + mi := &file_pb_fiee_cast_proto_msgTypes[71] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5566,7 +5853,7 @@ func (x *GetLayoutReq) String() string { func (*GetLayoutReq) ProtoMessage() {} func (x *GetLayoutReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[69] + mi := &file_pb_fiee_cast_proto_msgTypes[71] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5579,7 +5866,7 @@ func (x *GetLayoutReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetLayoutReq.ProtoReflect.Descriptor instead. func (*GetLayoutReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{69} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{71} } func (x *GetLayoutReq) GetUserID() string { @@ -5608,7 +5895,7 @@ type GetLayoutResp struct { func (x *GetLayoutResp) Reset() { *x = GetLayoutResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[70] + mi := &file_pb_fiee_cast_proto_msgTypes[72] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5621,7 +5908,7 @@ func (x *GetLayoutResp) String() string { func (*GetLayoutResp) ProtoMessage() {} func (x *GetLayoutResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[70] + mi := &file_pb_fiee_cast_proto_msgTypes[72] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5634,7 +5921,7 @@ func (x *GetLayoutResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetLayoutResp.ProtoReflect.Descriptor instead. func (*GetLayoutResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{70} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{72} } func (x *GetLayoutResp) GetData() string { @@ -5665,7 +5952,7 @@ type UpdatePromptReq struct { func (x *UpdatePromptReq) Reset() { *x = UpdatePromptReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[71] + mi := &file_pb_fiee_cast_proto_msgTypes[73] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5678,7 +5965,7 @@ func (x *UpdatePromptReq) String() string { func (*UpdatePromptReq) ProtoMessage() {} func (x *UpdatePromptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[71] + mi := &file_pb_fiee_cast_proto_msgTypes[73] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5691,7 +5978,7 @@ func (x *UpdatePromptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdatePromptReq.ProtoReflect.Descriptor instead. func (*UpdatePromptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{71} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{73} } func (x *UpdatePromptReq) GetPromptUuid() string { @@ -5726,7 +6013,7 @@ type DeletePromptReq struct { func (x *DeletePromptReq) Reset() { *x = DeletePromptReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[72] + mi := &file_pb_fiee_cast_proto_msgTypes[74] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5739,7 +6026,7 @@ func (x *DeletePromptReq) String() string { func (*DeletePromptReq) ProtoMessage() {} func (x *DeletePromptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[72] + mi := &file_pb_fiee_cast_proto_msgTypes[74] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5752,7 +6039,7 @@ func (x *DeletePromptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DeletePromptReq.ProtoReflect.Descriptor instead. func (*DeletePromptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{72} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{74} } func (x *DeletePromptReq) GetPromptUuid() string { @@ -5773,7 +6060,7 @@ type GetPromptReq struct { func (x *GetPromptReq) Reset() { *x = GetPromptReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[73] + mi := &file_pb_fiee_cast_proto_msgTypes[75] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5786,7 +6073,7 @@ func (x *GetPromptReq) String() string { func (*GetPromptReq) ProtoMessage() {} func (x *GetPromptReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[73] + mi := &file_pb_fiee_cast_proto_msgTypes[75] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5799,7 +6086,7 @@ func (x *GetPromptReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetPromptReq.ProtoReflect.Descriptor instead. func (*GetPromptReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{73} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{75} } func (x *GetPromptReq) GetPromptUuid() string { @@ -5823,7 +6110,7 @@ type GetPromptResp struct { func (x *GetPromptResp) Reset() { *x = GetPromptResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[74] + mi := &file_pb_fiee_cast_proto_msgTypes[76] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5836,7 +6123,7 @@ func (x *GetPromptResp) String() string { func (*GetPromptResp) ProtoMessage() {} func (x *GetPromptResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[74] + mi := &file_pb_fiee_cast_proto_msgTypes[76] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5849,7 +6136,7 @@ func (x *GetPromptResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetPromptResp.ProtoReflect.Descriptor instead. func (*GetPromptResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{74} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{76} } func (x *GetPromptResp) GetPromptUuid() string { @@ -5890,14 +6177,14 @@ type ListPromptsReq struct { Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 Rand bool `protobuf:"varint,5,opt,name=rand,proto3" json:"rand"` - StartUseCount uint32 `protobuf:"varint,6,opt,name=startUseCount,proto3" json:"startUseCount"` - EndUseCount uint32 `protobuf:"varint,7,opt,name=endUseCount,proto3" json:"endUseCount"` + StartUseCount int32 `protobuf:"varint,6,opt,name=startUseCount,proto3" json:"startUseCount"` + EndUseCount int32 `protobuf:"varint,7,opt,name=endUseCount,proto3" json:"endUseCount"` } func (x *ListPromptsReq) Reset() { *x = ListPromptsReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[75] + mi := &file_pb_fiee_cast_proto_msgTypes[77] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -5910,7 +6197,7 @@ func (x *ListPromptsReq) String() string { func (*ListPromptsReq) ProtoMessage() {} func (x *ListPromptsReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[75] + mi := &file_pb_fiee_cast_proto_msgTypes[77] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -5923,7 +6210,7 @@ func (x *ListPromptsReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ListPromptsReq.ProtoReflect.Descriptor instead. func (*ListPromptsReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{75} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{77} } func (x *ListPromptsReq) GetPrompt() string { @@ -5961,14 +6248,14 @@ func (x *ListPromptsReq) GetRand() bool { return false } -func (x *ListPromptsReq) GetStartUseCount() uint32 { +func (x *ListPromptsReq) GetStartUseCount() int32 { if x != nil { return x.StartUseCount } return 0 } -func (x *ListPromptsReq) GetEndUseCount() uint32 { +func (x *ListPromptsReq) GetEndUseCount() int32 { if x != nil { return x.EndUseCount } @@ -5993,7 +6280,7 @@ type PromptInfo struct { func (x *PromptInfo) Reset() { *x = PromptInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[76] + mi := &file_pb_fiee_cast_proto_msgTypes[78] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6006,7 +6293,7 @@ func (x *PromptInfo) String() string { func (*PromptInfo) ProtoMessage() {} func (x *PromptInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[76] + mi := &file_pb_fiee_cast_proto_msgTypes[78] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6019,7 +6306,7 @@ func (x *PromptInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use PromptInfo.ProtoReflect.Descriptor instead. func (*PromptInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{76} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{78} } func (x *PromptInfo) GetPromptUuid() string { @@ -6090,7 +6377,7 @@ type ListPromptsResp struct { func (x *ListPromptsResp) Reset() { *x = ListPromptsResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[77] + mi := &file_pb_fiee_cast_proto_msgTypes[79] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6103,7 +6390,7 @@ func (x *ListPromptsResp) String() string { func (*ListPromptsResp) ProtoMessage() {} func (x *ListPromptsResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[77] + mi := &file_pb_fiee_cast_proto_msgTypes[79] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6116,7 +6403,7 @@ func (x *ListPromptsResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ListPromptsResp.ProtoReflect.Descriptor instead. func (*ListPromptsResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{77} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{79} } func (x *ListPromptsResp) GetData() []*PromptInfo { @@ -6144,7 +6431,7 @@ type UpdatePromptBatchReq struct { func (x *UpdatePromptBatchReq) Reset() { *x = UpdatePromptBatchReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[78] + mi := &file_pb_fiee_cast_proto_msgTypes[80] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6157,7 +6444,7 @@ func (x *UpdatePromptBatchReq) String() string { func (*UpdatePromptBatchReq) ProtoMessage() {} func (x *UpdatePromptBatchReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[78] + mi := &file_pb_fiee_cast_proto_msgTypes[80] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6170,7 +6457,7 @@ func (x *UpdatePromptBatchReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdatePromptBatchReq.ProtoReflect.Descriptor instead. func (*UpdatePromptBatchReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{78} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{80} } func (x *UpdatePromptBatchReq) GetData() []*PromptInfo { @@ -6193,7 +6480,7 @@ type UpdatePromptBatchResp struct { func (x *UpdatePromptBatchResp) Reset() { *x = UpdatePromptBatchResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[79] + mi := &file_pb_fiee_cast_proto_msgTypes[81] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6206,7 +6493,7 @@ func (x *UpdatePromptBatchResp) String() string { func (*UpdatePromptBatchResp) ProtoMessage() {} func (x *UpdatePromptBatchResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[79] + mi := &file_pb_fiee_cast_proto_msgTypes[81] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6219,7 +6506,7 @@ func (x *UpdatePromptBatchResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdatePromptBatchResp.ProtoReflect.Descriptor instead. func (*UpdatePromptBatchResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{79} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{81} } func (x *UpdatePromptBatchResp) GetData() []*PromptInfo { @@ -6258,7 +6545,7 @@ type ArtistInfo struct { func (x *ArtistInfo) Reset() { *x = ArtistInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[80] + mi := &file_pb_fiee_cast_proto_msgTypes[82] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6271,7 +6558,7 @@ func (x *ArtistInfo) String() string { func (*ArtistInfo) ProtoMessage() {} func (x *ArtistInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[80] + mi := &file_pb_fiee_cast_proto_msgTypes[82] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6284,7 +6571,7 @@ func (x *ArtistInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistInfo.ProtoReflect.Descriptor instead. func (*ArtistInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{80} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{82} } func (x *ArtistInfo) GetArtistUuid() string { @@ -6327,7 +6614,7 @@ type UpdateArtistReq struct { func (x *UpdateArtistReq) Reset() { *x = UpdateArtistReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[81] + mi := &file_pb_fiee_cast_proto_msgTypes[83] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6340,7 +6627,7 @@ func (x *UpdateArtistReq) String() string { func (*UpdateArtistReq) ProtoMessage() {} func (x *UpdateArtistReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[81] + mi := &file_pb_fiee_cast_proto_msgTypes[83] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6353,7 +6640,7 @@ func (x *UpdateArtistReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateArtistReq.ProtoReflect.Descriptor instead. func (*UpdateArtistReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{81} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{83} } func (x *UpdateArtistReq) GetArtistInfo() *ArtistInfo { @@ -6381,7 +6668,7 @@ type UpdateArtistResp struct { func (x *UpdateArtistResp) Reset() { *x = UpdateArtistResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[82] + mi := &file_pb_fiee_cast_proto_msgTypes[84] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6394,7 +6681,7 @@ func (x *UpdateArtistResp) String() string { func (*UpdateArtistResp) ProtoMessage() {} func (x *UpdateArtistResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[82] + mi := &file_pb_fiee_cast_proto_msgTypes[84] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6407,7 +6694,7 @@ func (x *UpdateArtistResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateArtistResp.ProtoReflect.Descriptor instead. func (*UpdateArtistResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{82} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{84} } func (x *UpdateArtistResp) GetArtistUuid() string { @@ -6428,7 +6715,7 @@ type GetArtistReq struct { func (x *GetArtistReq) Reset() { *x = GetArtistReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[83] + mi := &file_pb_fiee_cast_proto_msgTypes[85] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6441,7 +6728,7 @@ func (x *GetArtistReq) String() string { func (*GetArtistReq) ProtoMessage() {} func (x *GetArtistReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[83] + mi := &file_pb_fiee_cast_proto_msgTypes[85] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6454,7 +6741,7 @@ func (x *GetArtistReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetArtistReq.ProtoReflect.Descriptor instead. func (*GetArtistReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{83} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{85} } func (x *GetArtistReq) GetArtistUuid() string { @@ -6476,7 +6763,7 @@ type GetArtistResp struct { func (x *GetArtistResp) Reset() { *x = GetArtistResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[84] + mi := &file_pb_fiee_cast_proto_msgTypes[86] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6489,7 +6776,7 @@ func (x *GetArtistResp) String() string { func (*GetArtistResp) ProtoMessage() {} func (x *GetArtistResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[84] + mi := &file_pb_fiee_cast_proto_msgTypes[86] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6502,7 +6789,7 @@ func (x *GetArtistResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetArtistResp.ProtoReflect.Descriptor instead. func (*GetArtistResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{84} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{86} } func (x *GetArtistResp) GetArtistInfo() *ArtistInfo { @@ -6554,7 +6841,7 @@ type CreateWorkAnalysisReq struct { func (x *CreateWorkAnalysisReq) Reset() { *x = CreateWorkAnalysisReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[85] + mi := &file_pb_fiee_cast_proto_msgTypes[87] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6567,7 +6854,7 @@ func (x *CreateWorkAnalysisReq) String() string { func (*CreateWorkAnalysisReq) ProtoMessage() {} func (x *CreateWorkAnalysisReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[85] + mi := &file_pb_fiee_cast_proto_msgTypes[87] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6580,7 +6867,7 @@ func (x *CreateWorkAnalysisReq) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateWorkAnalysisReq.ProtoReflect.Descriptor instead. func (*CreateWorkAnalysisReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{85} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{87} } func (x *CreateWorkAnalysisReq) GetUuid() string { @@ -6762,7 +7049,7 @@ type CreateWorkAnalysisResp struct { func (x *CreateWorkAnalysisResp) Reset() { *x = CreateWorkAnalysisResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[86] + mi := &file_pb_fiee_cast_proto_msgTypes[88] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6775,7 +7062,7 @@ func (x *CreateWorkAnalysisResp) String() string { func (*CreateWorkAnalysisResp) ProtoMessage() {} func (x *CreateWorkAnalysisResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[86] + mi := &file_pb_fiee_cast_proto_msgTypes[88] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6788,7 +7075,7 @@ func (x *CreateWorkAnalysisResp) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateWorkAnalysisResp.ProtoReflect.Descriptor instead. func (*CreateWorkAnalysisResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{86} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{88} } func (x *CreateWorkAnalysisResp) GetUuid() string { @@ -6829,7 +7116,7 @@ type UpdateWorkAnalysisReq struct { func (x *UpdateWorkAnalysisReq) Reset() { *x = UpdateWorkAnalysisReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[87] + mi := &file_pb_fiee_cast_proto_msgTypes[89] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -6842,7 +7129,7 @@ func (x *UpdateWorkAnalysisReq) String() string { func (*UpdateWorkAnalysisReq) ProtoMessage() {} func (x *UpdateWorkAnalysisReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[87] + mi := &file_pb_fiee_cast_proto_msgTypes[89] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -6855,7 +7142,7 @@ func (x *UpdateWorkAnalysisReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkAnalysisReq.ProtoReflect.Descriptor instead. func (*UpdateWorkAnalysisReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{87} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{89} } func (x *UpdateWorkAnalysisReq) GetUuid() string { @@ -7023,7 +7310,7 @@ type UpdateWorkAnalysisStatusReq struct { func (x *UpdateWorkAnalysisStatusReq) Reset() { *x = UpdateWorkAnalysisStatusReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[88] + mi := &file_pb_fiee_cast_proto_msgTypes[90] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7036,7 +7323,7 @@ func (x *UpdateWorkAnalysisStatusReq) String() string { func (*UpdateWorkAnalysisStatusReq) ProtoMessage() {} func (x *UpdateWorkAnalysisStatusReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[88] + mi := &file_pb_fiee_cast_proto_msgTypes[90] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7049,7 +7336,7 @@ func (x *UpdateWorkAnalysisStatusReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkAnalysisStatusReq.ProtoReflect.Descriptor instead. func (*UpdateWorkAnalysisStatusReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{88} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{90} } func (x *UpdateWorkAnalysisStatusReq) GetWorkAction() WorkActionENUM { @@ -7127,7 +7414,7 @@ type WorkAnalysisLogInfo struct { func (x *WorkAnalysisLogInfo) Reset() { *x = WorkAnalysisLogInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[89] + mi := &file_pb_fiee_cast_proto_msgTypes[91] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7140,7 +7427,7 @@ func (x *WorkAnalysisLogInfo) String() string { func (*WorkAnalysisLogInfo) ProtoMessage() {} func (x *WorkAnalysisLogInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[89] + mi := &file_pb_fiee_cast_proto_msgTypes[91] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7153,7 +7440,7 @@ func (x *WorkAnalysisLogInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisLogInfo.ProtoReflect.Descriptor instead. func (*WorkAnalysisLogInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{89} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{91} } func (x *WorkAnalysisLogInfo) GetWorkUuid() string { @@ -7238,7 +7525,7 @@ type WorkAnalysisFansSeries struct { func (x *WorkAnalysisFansSeries) Reset() { *x = WorkAnalysisFansSeries{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[90] + mi := &file_pb_fiee_cast_proto_msgTypes[92] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7251,7 +7538,7 @@ func (x *WorkAnalysisFansSeries) String() string { func (*WorkAnalysisFansSeries) ProtoMessage() {} func (x *WorkAnalysisFansSeries) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[90] + mi := &file_pb_fiee_cast_proto_msgTypes[92] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7264,7 +7551,7 @@ func (x *WorkAnalysisFansSeries) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisFansSeries.ProtoReflect.Descriptor instead. func (*WorkAnalysisFansSeries) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{90} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{92} } func (x *WorkAnalysisFansSeries) GetUuid() string { @@ -7342,7 +7629,7 @@ type WorkAnalysisViewsSeries struct { func (x *WorkAnalysisViewsSeries) Reset() { *x = WorkAnalysisViewsSeries{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[91] + mi := &file_pb_fiee_cast_proto_msgTypes[93] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7355,7 +7642,7 @@ func (x *WorkAnalysisViewsSeries) String() string { func (*WorkAnalysisViewsSeries) ProtoMessage() {} func (x *WorkAnalysisViewsSeries) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[91] + mi := &file_pb_fiee_cast_proto_msgTypes[93] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7368,7 +7655,7 @@ func (x *WorkAnalysisViewsSeries) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisViewsSeries.ProtoReflect.Descriptor instead. func (*WorkAnalysisViewsSeries) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{91} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{93} } func (x *WorkAnalysisViewsSeries) GetUuid() string { @@ -7446,7 +7733,7 @@ type WorkAnalysisLikesSeries struct { func (x *WorkAnalysisLikesSeries) Reset() { *x = WorkAnalysisLikesSeries{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[92] + mi := &file_pb_fiee_cast_proto_msgTypes[94] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7459,7 +7746,7 @@ func (x *WorkAnalysisLikesSeries) String() string { func (*WorkAnalysisLikesSeries) ProtoMessage() {} func (x *WorkAnalysisLikesSeries) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[92] + mi := &file_pb_fiee_cast_proto_msgTypes[94] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7472,7 +7759,7 @@ func (x *WorkAnalysisLikesSeries) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisLikesSeries.ProtoReflect.Descriptor instead. func (*WorkAnalysisLikesSeries) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{92} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{94} } func (x *WorkAnalysisLikesSeries) GetUuid() string { @@ -7550,7 +7837,7 @@ type WorkAnalysisCommentsSeries struct { func (x *WorkAnalysisCommentsSeries) Reset() { *x = WorkAnalysisCommentsSeries{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[93] + mi := &file_pb_fiee_cast_proto_msgTypes[95] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7563,7 +7850,7 @@ func (x *WorkAnalysisCommentsSeries) String() string { func (*WorkAnalysisCommentsSeries) ProtoMessage() {} func (x *WorkAnalysisCommentsSeries) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[93] + mi := &file_pb_fiee_cast_proto_msgTypes[95] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7576,7 +7863,7 @@ func (x *WorkAnalysisCommentsSeries) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisCommentsSeries.ProtoReflect.Descriptor instead. func (*WorkAnalysisCommentsSeries) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{93} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{95} } func (x *WorkAnalysisCommentsSeries) GetUuid() string { @@ -7654,7 +7941,7 @@ type WorkAnalysisSharesSeries struct { func (x *WorkAnalysisSharesSeries) Reset() { *x = WorkAnalysisSharesSeries{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[94] + mi := &file_pb_fiee_cast_proto_msgTypes[96] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7667,7 +7954,7 @@ func (x *WorkAnalysisSharesSeries) String() string { func (*WorkAnalysisSharesSeries) ProtoMessage() {} func (x *WorkAnalysisSharesSeries) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[94] + mi := &file_pb_fiee_cast_proto_msgTypes[96] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7680,7 +7967,7 @@ func (x *WorkAnalysisSharesSeries) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisSharesSeries.ProtoReflect.Descriptor instead. func (*WorkAnalysisSharesSeries) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{94} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{96} } func (x *WorkAnalysisSharesSeries) GetUuid() string { @@ -7754,7 +8041,7 @@ type WorkAnalysisTopCities struct { func (x *WorkAnalysisTopCities) Reset() { *x = WorkAnalysisTopCities{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[95] + mi := &file_pb_fiee_cast_proto_msgTypes[97] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7767,7 +8054,7 @@ func (x *WorkAnalysisTopCities) String() string { func (*WorkAnalysisTopCities) ProtoMessage() {} func (x *WorkAnalysisTopCities) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[95] + mi := &file_pb_fiee_cast_proto_msgTypes[97] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7780,7 +8067,7 @@ func (x *WorkAnalysisTopCities) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisTopCities.ProtoReflect.Descriptor instead. func (*WorkAnalysisTopCities) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{95} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{97} } func (x *WorkAnalysisTopCities) GetUuid() string { @@ -7826,7 +8113,7 @@ type WorkAnalysisMostActiveDay struct { func (x *WorkAnalysisMostActiveDay) Reset() { *x = WorkAnalysisMostActiveDay{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[96] + mi := &file_pb_fiee_cast_proto_msgTypes[98] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7839,7 +8126,7 @@ func (x *WorkAnalysisMostActiveDay) String() string { func (*WorkAnalysisMostActiveDay) ProtoMessage() {} func (x *WorkAnalysisMostActiveDay) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[96] + mi := &file_pb_fiee_cast_proto_msgTypes[98] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7852,7 +8139,7 @@ func (x *WorkAnalysisMostActiveDay) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisMostActiveDay.ProtoReflect.Descriptor instead. func (*WorkAnalysisMostActiveDay) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{96} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{98} } func (x *WorkAnalysisMostActiveDay) GetUuid() string { @@ -7898,7 +8185,7 @@ type WorkAnalysisBestPostTime struct { func (x *WorkAnalysisBestPostTime) Reset() { *x = WorkAnalysisBestPostTime{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[97] + mi := &file_pb_fiee_cast_proto_msgTypes[99] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7911,7 +8198,7 @@ func (x *WorkAnalysisBestPostTime) String() string { func (*WorkAnalysisBestPostTime) ProtoMessage() {} func (x *WorkAnalysisBestPostTime) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[97] + mi := &file_pb_fiee_cast_proto_msgTypes[99] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7924,7 +8211,7 @@ func (x *WorkAnalysisBestPostTime) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisBestPostTime.ProtoReflect.Descriptor instead. func (*WorkAnalysisBestPostTime) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{97} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{99} } func (x *WorkAnalysisBestPostTime) GetUuid() string { @@ -7971,7 +8258,7 @@ type WorkAnalysisExtra struct { func (x *WorkAnalysisExtra) Reset() { *x = WorkAnalysisExtra{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[98] + mi := &file_pb_fiee_cast_proto_msgTypes[100] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -7984,7 +8271,7 @@ func (x *WorkAnalysisExtra) String() string { func (*WorkAnalysisExtra) ProtoMessage() {} func (x *WorkAnalysisExtra) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[98] + mi := &file_pb_fiee_cast_proto_msgTypes[100] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -7997,7 +8284,7 @@ func (x *WorkAnalysisExtra) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisExtra.ProtoReflect.Descriptor instead. func (*WorkAnalysisExtra) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{98} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{100} } func (x *WorkAnalysisExtra) GetAnalysisUuid() string { @@ -8046,7 +8333,7 @@ type GetWorkAnalysisDetailReq struct { func (x *GetWorkAnalysisDetailReq) Reset() { *x = GetWorkAnalysisDetailReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[99] + mi := &file_pb_fiee_cast_proto_msgTypes[101] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8059,7 +8346,7 @@ func (x *GetWorkAnalysisDetailReq) String() string { func (*GetWorkAnalysisDetailReq) ProtoMessage() {} func (x *GetWorkAnalysisDetailReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[99] + mi := &file_pb_fiee_cast_proto_msgTypes[101] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8072,7 +8359,7 @@ func (x *GetWorkAnalysisDetailReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetWorkAnalysisDetailReq.ProtoReflect.Descriptor instead. func (*GetWorkAnalysisDetailReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{99} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{101} } func (x *GetWorkAnalysisDetailReq) GetUuid() string { @@ -8093,7 +8380,7 @@ type GetLatestWorkAnalysisReq struct { func (x *GetLatestWorkAnalysisReq) Reset() { *x = GetLatestWorkAnalysisReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[100] + mi := &file_pb_fiee_cast_proto_msgTypes[102] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8106,7 +8393,7 @@ func (x *GetLatestWorkAnalysisReq) String() string { func (*GetLatestWorkAnalysisReq) ProtoMessage() {} func (x *GetLatestWorkAnalysisReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[100] + mi := &file_pb_fiee_cast_proto_msgTypes[102] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8119,7 +8406,7 @@ func (x *GetLatestWorkAnalysisReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetLatestWorkAnalysisReq.ProtoReflect.Descriptor instead. func (*GetLatestWorkAnalysisReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{100} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{102} } func (x *GetLatestWorkAnalysisReq) GetSubNum() string { @@ -8177,7 +8464,7 @@ type GetWorkAnalysisResp struct { func (x *GetWorkAnalysisResp) Reset() { *x = GetWorkAnalysisResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[101] + mi := &file_pb_fiee_cast_proto_msgTypes[103] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8190,7 +8477,7 @@ func (x *GetWorkAnalysisResp) String() string { func (*GetWorkAnalysisResp) ProtoMessage() {} func (x *GetWorkAnalysisResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[101] + mi := &file_pb_fiee_cast_proto_msgTypes[103] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8203,7 +8490,7 @@ func (x *GetWorkAnalysisResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetWorkAnalysisResp.ProtoReflect.Descriptor instead. func (*GetWorkAnalysisResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{101} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{103} } func (x *GetWorkAnalysisResp) GetUuid() string { @@ -8522,7 +8809,7 @@ type GetWorkAnalysisDetailResp struct { func (x *GetWorkAnalysisDetailResp) Reset() { *x = GetWorkAnalysisDetailResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[102] + mi := &file_pb_fiee_cast_proto_msgTypes[104] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8535,7 +8822,7 @@ func (x *GetWorkAnalysisDetailResp) String() string { func (*GetWorkAnalysisDetailResp) ProtoMessage() {} func (x *GetWorkAnalysisDetailResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[102] + mi := &file_pb_fiee_cast_proto_msgTypes[104] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8548,7 +8835,7 @@ func (x *GetWorkAnalysisDetailResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetWorkAnalysisDetailResp.ProtoReflect.Descriptor instead. func (*GetWorkAnalysisDetailResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{102} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{104} } func (x *GetWorkAnalysisDetailResp) GetUuid() string { @@ -8854,7 +9141,7 @@ type ListWorkAnalysisReq struct { func (x *ListWorkAnalysisReq) Reset() { *x = ListWorkAnalysisReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[103] + mi := &file_pb_fiee_cast_proto_msgTypes[105] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -8867,7 +9154,7 @@ func (x *ListWorkAnalysisReq) String() string { func (*ListWorkAnalysisReq) ProtoMessage() {} func (x *ListWorkAnalysisReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[103] + mi := &file_pb_fiee_cast_proto_msgTypes[105] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -8880,7 +9167,7 @@ func (x *ListWorkAnalysisReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ListWorkAnalysisReq.ProtoReflect.Descriptor instead. func (*ListWorkAnalysisReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{103} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{105} } func (x *ListWorkAnalysisReq) GetUuidList() []string { @@ -8999,7 +9286,7 @@ type WorkAnalysisInfo struct { func (x *WorkAnalysisInfo) Reset() { *x = WorkAnalysisInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[104] + mi := &file_pb_fiee_cast_proto_msgTypes[106] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9012,7 +9299,7 @@ func (x *WorkAnalysisInfo) String() string { func (*WorkAnalysisInfo) ProtoMessage() {} func (x *WorkAnalysisInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[104] + mi := &file_pb_fiee_cast_proto_msgTypes[106] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9025,7 +9312,7 @@ func (x *WorkAnalysisInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkAnalysisInfo.ProtoReflect.Descriptor instead. func (*WorkAnalysisInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{104} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{106} } func (x *WorkAnalysisInfo) GetUuid() string { @@ -9145,7 +9432,7 @@ type ListWorkAnalysisResp struct { func (x *ListWorkAnalysisResp) Reset() { *x = ListWorkAnalysisResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[105] + mi := &file_pb_fiee_cast_proto_msgTypes[107] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9158,7 +9445,7 @@ func (x *ListWorkAnalysisResp) String() string { func (*ListWorkAnalysisResp) ProtoMessage() {} func (x *ListWorkAnalysisResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[105] + mi := &file_pb_fiee_cast_proto_msgTypes[107] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9171,7 +9458,7 @@ func (x *ListWorkAnalysisResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ListWorkAnalysisResp.ProtoReflect.Descriptor instead. func (*ListWorkAnalysisResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{105} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{107} } func (x *ListWorkAnalysisResp) GetData() []*WorkAnalysisInfo { @@ -9199,7 +9486,7 @@ type DeleteWorkAnalysisReq struct { func (x *DeleteWorkAnalysisReq) Reset() { *x = DeleteWorkAnalysisReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[106] + mi := &file_pb_fiee_cast_proto_msgTypes[108] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9212,7 +9499,7 @@ func (x *DeleteWorkAnalysisReq) String() string { func (*DeleteWorkAnalysisReq) ProtoMessage() {} func (x *DeleteWorkAnalysisReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[106] + mi := &file_pb_fiee_cast_proto_msgTypes[108] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9225,7 +9512,7 @@ func (x *DeleteWorkAnalysisReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteWorkAnalysisReq.ProtoReflect.Descriptor instead. func (*DeleteWorkAnalysisReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{106} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{108} } func (x *DeleteWorkAnalysisReq) GetUuid() string { @@ -9254,7 +9541,7 @@ type ArtistDataListReq struct { func (x *ArtistDataListReq) Reset() { *x = ArtistDataListReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[107] + mi := &file_pb_fiee_cast_proto_msgTypes[109] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9267,7 +9554,7 @@ func (x *ArtistDataListReq) String() string { func (*ArtistDataListReq) ProtoMessage() {} func (x *ArtistDataListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[107] + mi := &file_pb_fiee_cast_proto_msgTypes[109] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9280,7 +9567,7 @@ func (x *ArtistDataListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistDataListReq.ProtoReflect.Descriptor instead. func (*ArtistDataListReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{107} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{109} } func (x *ArtistDataListReq) GetArtistVal() string { @@ -9369,7 +9656,7 @@ type ArtistDataRespItem struct { func (x *ArtistDataRespItem) Reset() { *x = ArtistDataRespItem{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[108] + mi := &file_pb_fiee_cast_proto_msgTypes[110] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9382,7 +9669,7 @@ func (x *ArtistDataRespItem) String() string { func (*ArtistDataRespItem) ProtoMessage() {} func (x *ArtistDataRespItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[108] + mi := &file_pb_fiee_cast_proto_msgTypes[110] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9395,7 +9682,7 @@ func (x *ArtistDataRespItem) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistDataRespItem.ProtoReflect.Descriptor instead. func (*ArtistDataRespItem) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{108} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{110} } func (x *ArtistDataRespItem) GetArtistName() string { @@ -9544,7 +9831,7 @@ type ArtistDataListResp struct { func (x *ArtistDataListResp) Reset() { *x = ArtistDataListResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[109] + mi := &file_pb_fiee_cast_proto_msgTypes[111] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9557,7 +9844,7 @@ func (x *ArtistDataListResp) String() string { func (*ArtistDataListResp) ProtoMessage() {} func (x *ArtistDataListResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[109] + mi := &file_pb_fiee_cast_proto_msgTypes[111] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9570,7 +9857,7 @@ func (x *ArtistDataListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistDataListResp.ProtoReflect.Descriptor instead. func (*ArtistDataListResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{109} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{111} } func (x *ArtistDataListResp) GetData() []*ArtistDataRespItem { @@ -9603,7 +9890,7 @@ type MediaDataListReq struct { func (x *MediaDataListReq) Reset() { *x = MediaDataListReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[110] + mi := &file_pb_fiee_cast_proto_msgTypes[112] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9616,7 +9903,7 @@ func (x *MediaDataListReq) String() string { func (*MediaDataListReq) ProtoMessage() {} func (x *MediaDataListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[110] + mi := &file_pb_fiee_cast_proto_msgTypes[112] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9629,7 +9916,7 @@ func (x *MediaDataListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaDataListReq.ProtoReflect.Descriptor instead. func (*MediaDataListReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{110} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{112} } func (x *MediaDataListReq) GetArtistVal() string { @@ -9693,7 +9980,7 @@ type MediaDataListItem struct { func (x *MediaDataListItem) Reset() { *x = MediaDataListItem{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[111] + mi := &file_pb_fiee_cast_proto_msgTypes[113] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9706,7 +9993,7 @@ func (x *MediaDataListItem) String() string { func (*MediaDataListItem) ProtoMessage() {} func (x *MediaDataListItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[111] + mi := &file_pb_fiee_cast_proto_msgTypes[113] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9719,7 +10006,7 @@ func (x *MediaDataListItem) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaDataListItem.ProtoReflect.Descriptor instead. func (*MediaDataListItem) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{111} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{113} } func (x *MediaDataListItem) GetArtistName() string { @@ -9840,7 +10127,7 @@ type MediaDataListResp struct { func (x *MediaDataListResp) Reset() { *x = MediaDataListResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[112] + mi := &file_pb_fiee_cast_proto_msgTypes[114] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9853,7 +10140,7 @@ func (x *MediaDataListResp) String() string { func (*MediaDataListResp) ProtoMessage() {} func (x *MediaDataListResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[112] + mi := &file_pb_fiee_cast_proto_msgTypes[114] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9866,7 +10153,7 @@ func (x *MediaDataListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaDataListResp.ProtoReflect.Descriptor instead. func (*MediaDataListResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{112} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{114} } func (x *MediaDataListResp) GetData() []*MediaDataListItem { @@ -9895,7 +10182,7 @@ type DataOverviewReq struct { func (x *DataOverviewReq) Reset() { *x = DataOverviewReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[113] + mi := &file_pb_fiee_cast_proto_msgTypes[115] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9908,7 +10195,7 @@ func (x *DataOverviewReq) String() string { func (*DataOverviewReq) ProtoMessage() {} func (x *DataOverviewReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[113] + mi := &file_pb_fiee_cast_proto_msgTypes[115] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9921,7 +10208,7 @@ func (x *DataOverviewReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DataOverviewReq.ProtoReflect.Descriptor instead. func (*DataOverviewReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{113} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{115} } func (x *DataOverviewReq) GetDate() string { @@ -9962,7 +10249,7 @@ type DataOverviewResp struct { func (x *DataOverviewResp) Reset() { *x = DataOverviewResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[114] + mi := &file_pb_fiee_cast_proto_msgTypes[116] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -9975,7 +10262,7 @@ func (x *DataOverviewResp) String() string { func (*DataOverviewResp) ProtoMessage() {} func (x *DataOverviewResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[114] + mi := &file_pb_fiee_cast_proto_msgTypes[116] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -9988,7 +10275,7 @@ func (x *DataOverviewResp) ProtoReflect() protoreflect.Message { // Deprecated: Use DataOverviewResp.ProtoReflect.Descriptor instead. func (*DataOverviewResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{114} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{116} } func (x *DataOverviewResp) GetAccountCount() int64 { @@ -10148,7 +10435,7 @@ type ArtistMetricsSeriesReq struct { func (x *ArtistMetricsSeriesReq) Reset() { *x = ArtistMetricsSeriesReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[115] + mi := &file_pb_fiee_cast_proto_msgTypes[117] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10161,7 +10448,7 @@ func (x *ArtistMetricsSeriesReq) String() string { func (*ArtistMetricsSeriesReq) ProtoMessage() {} func (x *ArtistMetricsSeriesReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[115] + mi := &file_pb_fiee_cast_proto_msgTypes[117] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10174,7 +10461,7 @@ func (x *ArtistMetricsSeriesReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistMetricsSeriesReq.ProtoReflect.Descriptor instead. func (*ArtistMetricsSeriesReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{115} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{117} } func (x *ArtistMetricsSeriesReq) GetArtistUUID() string { @@ -10237,7 +10524,7 @@ type ArtistMetricsSeriesResp struct { func (x *ArtistMetricsSeriesResp) Reset() { *x = ArtistMetricsSeriesResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[116] + mi := &file_pb_fiee_cast_proto_msgTypes[118] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10250,7 +10537,7 @@ func (x *ArtistMetricsSeriesResp) String() string { func (*ArtistMetricsSeriesResp) ProtoMessage() {} func (x *ArtistMetricsSeriesResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[116] + mi := &file_pb_fiee_cast_proto_msgTypes[118] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10263,7 +10550,7 @@ func (x *ArtistMetricsSeriesResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistMetricsSeriesResp.ProtoReflect.Descriptor instead. func (*ArtistMetricsSeriesResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{116} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{118} } func (x *ArtistMetricsSeriesResp) GetFansSeries() *WorkAnalysisFansSeries { @@ -10329,7 +10616,7 @@ type ArtistMetricsDailyWindowReq struct { func (x *ArtistMetricsDailyWindowReq) Reset() { *x = ArtistMetricsDailyWindowReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[117] + mi := &file_pb_fiee_cast_proto_msgTypes[119] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10342,7 +10629,7 @@ func (x *ArtistMetricsDailyWindowReq) String() string { func (*ArtistMetricsDailyWindowReq) ProtoMessage() {} func (x *ArtistMetricsDailyWindowReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[117] + mi := &file_pb_fiee_cast_proto_msgTypes[119] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10355,7 +10642,7 @@ func (x *ArtistMetricsDailyWindowReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistMetricsDailyWindowReq.ProtoReflect.Descriptor instead. func (*ArtistMetricsDailyWindowReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{117} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{119} } func (x *ArtistMetricsDailyWindowReq) GetArtistUUID() string { @@ -10392,7 +10679,7 @@ type SimplePoint struct { func (x *SimplePoint) Reset() { *x = SimplePoint{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[118] + mi := &file_pb_fiee_cast_proto_msgTypes[120] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10405,7 +10692,7 @@ func (x *SimplePoint) String() string { func (*SimplePoint) ProtoMessage() {} func (x *SimplePoint) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[118] + mi := &file_pb_fiee_cast_proto_msgTypes[120] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10418,7 +10705,7 @@ func (x *SimplePoint) ProtoReflect() protoreflect.Message { // Deprecated: Use SimplePoint.ProtoReflect.Descriptor instead. func (*SimplePoint) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{118} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{120} } func (x *SimplePoint) GetDate() int32 { @@ -10448,7 +10735,7 @@ type BestPostTimePoint struct { func (x *BestPostTimePoint) Reset() { *x = BestPostTimePoint{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[119] + mi := &file_pb_fiee_cast_proto_msgTypes[121] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10461,7 +10748,7 @@ func (x *BestPostTimePoint) String() string { func (*BestPostTimePoint) ProtoMessage() {} func (x *BestPostTimePoint) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[119] + mi := &file_pb_fiee_cast_proto_msgTypes[121] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10474,7 +10761,7 @@ func (x *BestPostTimePoint) ProtoReflect() protoreflect.Message { // Deprecated: Use BestPostTimePoint.ProtoReflect.Descriptor instead. func (*BestPostTimePoint) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{119} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{121} } func (x *BestPostTimePoint) GetTimePoint() string { @@ -10504,7 +10791,7 @@ type MostActiveDayPoint struct { func (x *MostActiveDayPoint) Reset() { *x = MostActiveDayPoint{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[120] + mi := &file_pb_fiee_cast_proto_msgTypes[122] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10517,7 +10804,7 @@ func (x *MostActiveDayPoint) String() string { func (*MostActiveDayPoint) ProtoMessage() {} func (x *MostActiveDayPoint) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[120] + mi := &file_pb_fiee_cast_proto_msgTypes[122] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10530,7 +10817,7 @@ func (x *MostActiveDayPoint) ProtoReflect() protoreflect.Message { // Deprecated: Use MostActiveDayPoint.ProtoReflect.Descriptor instead. func (*MostActiveDayPoint) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{120} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{122} } func (x *MostActiveDayPoint) GetDay() int32 { @@ -10570,7 +10857,7 @@ type ArtistMetricsDailyWindowResp struct { func (x *ArtistMetricsDailyWindowResp) Reset() { *x = ArtistMetricsDailyWindowResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[121] + mi := &file_pb_fiee_cast_proto_msgTypes[123] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10583,7 +10870,7 @@ func (x *ArtistMetricsDailyWindowResp) String() string { func (*ArtistMetricsDailyWindowResp) ProtoMessage() {} func (x *ArtistMetricsDailyWindowResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[121] + mi := &file_pb_fiee_cast_proto_msgTypes[123] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10596,7 +10883,7 @@ func (x *ArtistMetricsDailyWindowResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistMetricsDailyWindowResp.ProtoReflect.Descriptor instead. func (*ArtistMetricsDailyWindowResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{121} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{123} } func (x *ArtistMetricsDailyWindowResp) GetFansCount() int64 { @@ -10697,7 +10984,7 @@ type TobeConfirmedListReq struct { func (x *TobeConfirmedListReq) Reset() { *x = TobeConfirmedListReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[122] + mi := &file_pb_fiee_cast_proto_msgTypes[124] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10710,7 +10997,7 @@ func (x *TobeConfirmedListReq) String() string { func (*TobeConfirmedListReq) ProtoMessage() {} func (x *TobeConfirmedListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[122] + mi := &file_pb_fiee_cast_proto_msgTypes[124] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10723,7 +11010,7 @@ func (x *TobeConfirmedListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use TobeConfirmedListReq.ProtoReflect.Descriptor instead. func (*TobeConfirmedListReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{122} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{124} } func (x *TobeConfirmedListReq) GetArtistUuid() string { @@ -10774,7 +11061,7 @@ type TobeConfirmedItem struct { func (x *TobeConfirmedItem) Reset() { *x = TobeConfirmedItem{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[123] + mi := &file_pb_fiee_cast_proto_msgTypes[125] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10787,7 +11074,7 @@ func (x *TobeConfirmedItem) String() string { func (*TobeConfirmedItem) ProtoMessage() {} func (x *TobeConfirmedItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[123] + mi := &file_pb_fiee_cast_proto_msgTypes[125] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10800,7 +11087,7 @@ func (x *TobeConfirmedItem) ProtoReflect() protoreflect.Message { // Deprecated: Use TobeConfirmedItem.ProtoReflect.Descriptor instead. func (*TobeConfirmedItem) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{123} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{125} } func (x *TobeConfirmedItem) GetUuid() string { @@ -10928,7 +11215,7 @@ type TobeConfirmedListResp struct { func (x *TobeConfirmedListResp) Reset() { *x = TobeConfirmedListResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[124] + mi := &file_pb_fiee_cast_proto_msgTypes[126] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10941,7 +11228,7 @@ func (x *TobeConfirmedListResp) String() string { func (*TobeConfirmedListResp) ProtoMessage() {} func (x *TobeConfirmedListResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[124] + mi := &file_pb_fiee_cast_proto_msgTypes[126] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -10954,7 +11241,7 @@ func (x *TobeConfirmedListResp) ProtoReflect() protoreflect.Message { // Deprecated: Use TobeConfirmedListResp.ProtoReflect.Descriptor instead. func (*TobeConfirmedListResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{124} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{126} } func (x *TobeConfirmedListResp) GetData() []*TobeConfirmedItem { @@ -10983,7 +11270,7 @@ type UpdateWorkAnalysisApprovalIDReq struct { func (x *UpdateWorkAnalysisApprovalIDReq) Reset() { *x = UpdateWorkAnalysisApprovalIDReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[125] + mi := &file_pb_fiee_cast_proto_msgTypes[127] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -10996,7 +11283,7 @@ func (x *UpdateWorkAnalysisApprovalIDReq) String() string { func (*UpdateWorkAnalysisApprovalIDReq) ProtoMessage() {} func (x *UpdateWorkAnalysisApprovalIDReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[125] + mi := &file_pb_fiee_cast_proto_msgTypes[127] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11009,7 +11296,7 @@ func (x *UpdateWorkAnalysisApprovalIDReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateWorkAnalysisApprovalIDReq.ProtoReflect.Descriptor instead. func (*UpdateWorkAnalysisApprovalIDReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{125} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{127} } func (x *UpdateWorkAnalysisApprovalIDReq) GetUuid() string { @@ -11047,12 +11334,16 @@ type MediaMetricsDailyItem struct { SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图片数 + ProfileKey string `protobuf:"bytes,16,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key + IsSuccess uint32 `protobuf:"varint,17,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 + FailReason string `protobuf:"bytes,18,opt,name=failReason,proto3" json:"failReason"` // 失败原因 + FailType uint32 `protobuf:"varint,19,opt,name=failType,proto3" json:"failType"` // 失败类型 } func (x *MediaMetricsDailyItem) Reset() { *x = MediaMetricsDailyItem{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[126] + mi := &file_pb_fiee_cast_proto_msgTypes[128] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11065,7 +11356,7 @@ func (x *MediaMetricsDailyItem) String() string { func (*MediaMetricsDailyItem) ProtoMessage() {} func (x *MediaMetricsDailyItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[126] + mi := &file_pb_fiee_cast_proto_msgTypes[128] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11078,7 +11369,7 @@ func (x *MediaMetricsDailyItem) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaMetricsDailyItem.ProtoReflect.Descriptor instead. func (*MediaMetricsDailyItem) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{126} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{128} } func (x *MediaMetricsDailyItem) GetUuid() string { @@ -11186,6 +11477,34 @@ func (x *MediaMetricsDailyItem) GetImageCount() int64 { return 0 } +func (x *MediaMetricsDailyItem) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +func (x *MediaMetricsDailyItem) GetIsSuccess() uint32 { + if x != nil { + return x.IsSuccess + } + return 0 +} + +func (x *MediaMetricsDailyItem) GetFailReason() string { + if x != nil { + return x.FailReason + } + return "" +} + +func (x *MediaMetricsDailyItem) GetFailType() uint32 { + if x != nil { + return x.FailType + } + return 0 +} + // 批量插入或更新账号日级指标请求 type UpsertMediaMetricsDailyBatchReq struct { state protoimpl.MessageState @@ -11198,7 +11517,7 @@ type UpsertMediaMetricsDailyBatchReq struct { func (x *UpsertMediaMetricsDailyBatchReq) Reset() { *x = UpsertMediaMetricsDailyBatchReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[127] + mi := &file_pb_fiee_cast_proto_msgTypes[129] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11211,7 +11530,7 @@ func (x *UpsertMediaMetricsDailyBatchReq) String() string { func (*UpsertMediaMetricsDailyBatchReq) ProtoMessage() {} func (x *UpsertMediaMetricsDailyBatchReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[127] + mi := &file_pb_fiee_cast_proto_msgTypes[129] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11224,7 +11543,7 @@ func (x *UpsertMediaMetricsDailyBatchReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertMediaMetricsDailyBatchReq.ProtoReflect.Descriptor instead. func (*UpsertMediaMetricsDailyBatchReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{127} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{129} } func (x *UpsertMediaMetricsDailyBatchReq) GetData() []*MediaMetricsDailyItem { @@ -11246,7 +11565,7 @@ type UpsertMediaMetricsDailyBatchResp struct { func (x *UpsertMediaMetricsDailyBatchResp) Reset() { *x = UpsertMediaMetricsDailyBatchResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[128] + mi := &file_pb_fiee_cast_proto_msgTypes[130] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11259,7 +11578,7 @@ func (x *UpsertMediaMetricsDailyBatchResp) String() string { func (*UpsertMediaMetricsDailyBatchResp) ProtoMessage() {} func (x *UpsertMediaMetricsDailyBatchResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[128] + mi := &file_pb_fiee_cast_proto_msgTypes[130] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11272,7 +11591,7 @@ func (x *UpsertMediaMetricsDailyBatchResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertMediaMetricsDailyBatchResp.ProtoReflect.Descriptor instead. func (*UpsertMediaMetricsDailyBatchResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{128} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{130} } func (x *UpsertMediaMetricsDailyBatchResp) GetSuccess() bool { @@ -11288,25 +11607,30 @@ type WorkMetricsDailyItem struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID(可选,为空时自动生成) - WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID - ArtistUuid string `protobuf:"bytes,3,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - MediaAccUserID string `protobuf:"bytes,4,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID - MediaName string `protobuf:"bytes,5,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 - ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - PlatformID uint32 `protobuf:"varint,8,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion - Date int32 `protobuf:"varint,9,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) - ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 - LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID(可选,为空时自动生成) + WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID + ArtistUuid string `protobuf:"bytes,3,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + MediaAccUserID string `protobuf:"bytes,4,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID + MediaName string `protobuf:"bytes,5,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 + ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + PlatformID uint32 `protobuf:"varint,8,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion + Date int32 `protobuf:"varint,9,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) + ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + PublishMediaID string `protobuf:"bytes,14,opt,name=publishMediaID,proto3" json:"publishMediaID"` // 发布媒体ID + ProfileKey string `protobuf:"bytes,15,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key + IsSuccess uint32 `protobuf:"varint,16,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 + FailReason string `protobuf:"bytes,17,opt,name=failReason,proto3" json:"failReason"` // 失败原因 + FailType uint32 `protobuf:"varint,18,opt,name=failType,proto3" json:"failType"` // 失败类型 } func (x *WorkMetricsDailyItem) Reset() { *x = WorkMetricsDailyItem{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[129] + mi := &file_pb_fiee_cast_proto_msgTypes[131] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11319,7 +11643,7 @@ func (x *WorkMetricsDailyItem) String() string { func (*WorkMetricsDailyItem) ProtoMessage() {} func (x *WorkMetricsDailyItem) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[129] + mi := &file_pb_fiee_cast_proto_msgTypes[131] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11332,7 +11656,7 @@ func (x *WorkMetricsDailyItem) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkMetricsDailyItem.ProtoReflect.Descriptor instead. func (*WorkMetricsDailyItem) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{129} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{131} } func (x *WorkMetricsDailyItem) GetUuid() string { @@ -11426,6 +11750,41 @@ func (x *WorkMetricsDailyItem) GetSharesCount() int64 { return 0 } +func (x *WorkMetricsDailyItem) GetPublishMediaID() string { + if x != nil { + return x.PublishMediaID + } + return "" +} + +func (x *WorkMetricsDailyItem) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +func (x *WorkMetricsDailyItem) GetIsSuccess() uint32 { + if x != nil { + return x.IsSuccess + } + return 0 +} + +func (x *WorkMetricsDailyItem) GetFailReason() string { + if x != nil { + return x.FailReason + } + return "" +} + +func (x *WorkMetricsDailyItem) GetFailType() uint32 { + if x != nil { + return x.FailType + } + return 0 +} + // 批量插入或更新作品日级指标请求 type UpsertWorkMetricsDailyBatchReq struct { state protoimpl.MessageState @@ -11438,7 +11797,7 @@ type UpsertWorkMetricsDailyBatchReq struct { func (x *UpsertWorkMetricsDailyBatchReq) Reset() { *x = UpsertWorkMetricsDailyBatchReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[130] + mi := &file_pb_fiee_cast_proto_msgTypes[132] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11451,7 +11810,7 @@ func (x *UpsertWorkMetricsDailyBatchReq) String() string { func (*UpsertWorkMetricsDailyBatchReq) ProtoMessage() {} func (x *UpsertWorkMetricsDailyBatchReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[130] + mi := &file_pb_fiee_cast_proto_msgTypes[132] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11464,7 +11823,7 @@ func (x *UpsertWorkMetricsDailyBatchReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertWorkMetricsDailyBatchReq.ProtoReflect.Descriptor instead. func (*UpsertWorkMetricsDailyBatchReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{130} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{132} } func (x *UpsertWorkMetricsDailyBatchReq) GetData() []*WorkMetricsDailyItem { @@ -11486,7 +11845,7 @@ type UpsertWorkMetricsDailyBatchResp struct { func (x *UpsertWorkMetricsDailyBatchResp) Reset() { *x = UpsertWorkMetricsDailyBatchResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[131] + mi := &file_pb_fiee_cast_proto_msgTypes[133] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11499,7 +11858,7 @@ func (x *UpsertWorkMetricsDailyBatchResp) String() string { func (*UpsertWorkMetricsDailyBatchResp) ProtoMessage() {} func (x *UpsertWorkMetricsDailyBatchResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[131] + mi := &file_pb_fiee_cast_proto_msgTypes[133] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11512,7 +11871,7 @@ func (x *UpsertWorkMetricsDailyBatchResp) ProtoReflect() protoreflect.Message { // Deprecated: Use UpsertWorkMetricsDailyBatchResp.ProtoReflect.Descriptor instead. func (*UpsertWorkMetricsDailyBatchResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{131} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{133} } func (x *UpsertWorkMetricsDailyBatchResp) GetSuccess() bool { @@ -11538,7 +11897,7 @@ type GetArtistAyrShareInfoReq struct { func (x *GetArtistAyrShareInfoReq) Reset() { *x = GetArtistAyrShareInfoReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[132] + mi := &file_pb_fiee_cast_proto_msgTypes[134] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11551,7 +11910,7 @@ func (x *GetArtistAyrShareInfoReq) String() string { func (*GetArtistAyrShareInfoReq) ProtoMessage() {} func (x *GetArtistAyrShareInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[132] + mi := &file_pb_fiee_cast_proto_msgTypes[134] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11564,7 +11923,7 @@ func (x *GetArtistAyrShareInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use GetArtistAyrShareInfoReq.ProtoReflect.Descriptor instead. func (*GetArtistAyrShareInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{132} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{134} } func (x *GetArtistAyrShareInfoReq) GetArtistUuid() string { @@ -11622,7 +11981,7 @@ type ArtistAyrShareInfo struct { func (x *ArtistAyrShareInfo) Reset() { *x = ArtistAyrShareInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[133] + mi := &file_pb_fiee_cast_proto_msgTypes[135] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11635,7 +11994,7 @@ func (x *ArtistAyrShareInfo) String() string { func (*ArtistAyrShareInfo) ProtoMessage() {} func (x *ArtistAyrShareInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[133] + mi := &file_pb_fiee_cast_proto_msgTypes[135] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11648,7 +12007,7 @@ func (x *ArtistAyrShareInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtistAyrShareInfo.ProtoReflect.Descriptor instead. func (*ArtistAyrShareInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{133} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{135} } func (x *ArtistAyrShareInfo) GetUuid() string { @@ -11727,7 +12086,7 @@ type GetArtistAyrShareInfoResp struct { func (x *GetArtistAyrShareInfoResp) Reset() { *x = GetArtistAyrShareInfoResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[134] + mi := &file_pb_fiee_cast_proto_msgTypes[136] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11740,7 +12099,7 @@ func (x *GetArtistAyrShareInfoResp) String() string { func (*GetArtistAyrShareInfoResp) ProtoMessage() {} func (x *GetArtistAyrShareInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[134] + mi := &file_pb_fiee_cast_proto_msgTypes[136] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11753,7 +12112,7 @@ func (x *GetArtistAyrShareInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use GetArtistAyrShareInfoResp.ProtoReflect.Descriptor instead. func (*GetArtistAyrShareInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{134} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{136} } func (x *GetArtistAyrShareInfoResp) GetData() []*ArtistAyrShareInfo { @@ -11785,7 +12144,7 @@ type ListWorkPlatformInfoReq struct { func (x *ListWorkPlatformInfoReq) Reset() { *x = ListWorkPlatformInfoReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[135] + mi := &file_pb_fiee_cast_proto_msgTypes[137] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11798,7 +12157,7 @@ func (x *ListWorkPlatformInfoReq) String() string { func (*ListWorkPlatformInfoReq) ProtoMessage() {} func (x *ListWorkPlatformInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[135] + mi := &file_pb_fiee_cast_proto_msgTypes[137] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11811,7 +12170,7 @@ func (x *ListWorkPlatformInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ListWorkPlatformInfoReq.ProtoReflect.Descriptor instead. func (*ListWorkPlatformInfoReq) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{135} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{137} } func (x *ListWorkPlatformInfoReq) GetPlatformIDs() []uint32 { @@ -11869,7 +12228,7 @@ type WorkPlatformInfo struct { func (x *WorkPlatformInfo) Reset() { *x = WorkPlatformInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[136] + mi := &file_pb_fiee_cast_proto_msgTypes[138] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -11882,7 +12241,7 @@ func (x *WorkPlatformInfo) String() string { func (*WorkPlatformInfo) ProtoMessage() {} func (x *WorkPlatformInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[136] + mi := &file_pb_fiee_cast_proto_msgTypes[138] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -11895,7 +12254,7 @@ func (x *WorkPlatformInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkPlatformInfo.ProtoReflect.Descriptor instead. func (*WorkPlatformInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{136} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{138} } func (x *WorkPlatformInfo) GetUuid() string { @@ -12016,7 +12375,7 @@ type ListWorkPlatformInfoResp struct { func (x *ListWorkPlatformInfoResp) Reset() { *x = ListWorkPlatformInfoResp{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[137] + mi := &file_pb_fiee_cast_proto_msgTypes[139] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12029,7 +12388,7 @@ func (x *ListWorkPlatformInfoResp) String() string { func (*ListWorkPlatformInfoResp) ProtoMessage() {} func (x *ListWorkPlatformInfoResp) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[137] + mi := &file_pb_fiee_cast_proto_msgTypes[139] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12042,7 +12401,7 @@ func (x *ListWorkPlatformInfoResp) ProtoReflect() protoreflect.Message { // Deprecated: Use ListWorkPlatformInfoResp.ProtoReflect.Descriptor instead. func (*ListWorkPlatformInfoResp) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{137} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{139} } func (x *ListWorkPlatformInfoResp) GetData() []*WorkPlatformInfo { @@ -12059,41 +12418,1271 @@ func (x *ListWorkPlatformInfoResp) GetCount() int64 { return 0 } +// 查询账号日级指标列表请求 +type ListMediaMetricsDailyReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + IsSuccess uint32 `protobuf:"varint,1,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0表示不过滤,1表示成功,2表示失败 + FailType uint32 `protobuf:"varint,2,opt,name=failType,proto3" json:"failType"` // 失败类型 0表示不过滤,其他值表示具体的失败类型 + Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 + Date int32 `protobuf:"varint,5,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) 0表示不过滤 +} + +func (x *ListMediaMetricsDailyReq) Reset() { + *x = ListMediaMetricsDailyReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[140] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListMediaMetricsDailyReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListMediaMetricsDailyReq) ProtoMessage() {} + +func (x *ListMediaMetricsDailyReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[140] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListMediaMetricsDailyReq.ProtoReflect.Descriptor instead. +func (*ListMediaMetricsDailyReq) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{140} +} + +func (x *ListMediaMetricsDailyReq) GetIsSuccess() uint32 { + if x != nil { + return x.IsSuccess + } + return 0 +} + +func (x *ListMediaMetricsDailyReq) GetFailType() uint32 { + if x != nil { + return x.FailType + } + return 0 +} + +func (x *ListMediaMetricsDailyReq) GetPage() int32 { + if x != nil { + return x.Page + } + return 0 +} + +func (x *ListMediaMetricsDailyReq) GetPageSize() int32 { + if x != nil { + return x.PageSize + } + return 0 +} + +func (x *ListMediaMetricsDailyReq) GetDate() int32 { + if x != nil { + return x.Date + } + return 0 +} + +// 账号日级指标信息 +type MediaMetricsDailyInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + MediaAccUserID string `protobuf:"bytes,3,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID + MediaName string `protobuf:"bytes,4,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 + ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + PlatformID uint32 `protobuf:"varint,7,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion + Date int32 `protobuf:"varint,8,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) + FansCount int64 `protobuf:"varint,9,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 + ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 + ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图片数 + ProfileKey string `protobuf:"bytes,16,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key + IsSuccess uint32 `protobuf:"varint,17,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 + FailReason string `protobuf:"bytes,18,opt,name=failReason,proto3" json:"failReason"` // 失败原因 + FailType uint32 `protobuf:"varint,19,opt,name=failType,proto3" json:"failType"` // 失败类型 + CreatedAt int32 `protobuf:"varint,20,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,21,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 +} + +func (x *MediaMetricsDailyInfo) Reset() { + *x = MediaMetricsDailyInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[141] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *MediaMetricsDailyInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*MediaMetricsDailyInfo) ProtoMessage() {} + +func (x *MediaMetricsDailyInfo) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[141] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use MediaMetricsDailyInfo.ProtoReflect.Descriptor instead. +func (*MediaMetricsDailyInfo) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{141} +} + +func (x *MediaMetricsDailyInfo) GetUuid() string { + if x != nil { + return x.Uuid + } + return "" +} + +func (x *MediaMetricsDailyInfo) GetArtistUuid() string { + if x != nil { + return x.ArtistUuid + } + return "" +} + +func (x *MediaMetricsDailyInfo) GetMediaAccUserID() string { + if x != nil { + return x.MediaAccUserID + } + return "" +} + +func (x *MediaMetricsDailyInfo) GetMediaName() string { + if x != nil { + return x.MediaName + } + return "" +} + +func (x *MediaMetricsDailyInfo) GetArtistName() string { + if x != nil { + return x.ArtistName + } + return "" +} + +func (x *MediaMetricsDailyInfo) GetArtistPhone() string { + if x != nil { + return x.ArtistPhone + } + return "" +} + +func (x *MediaMetricsDailyInfo) GetPlatformID() uint32 { + if x != nil { + return x.PlatformID + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetDate() int32 { + if x != nil { + return x.Date + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetFansCount() int64 { + if x != nil { + return x.FansCount + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetViewsCount() int64 { + if x != nil { + return x.ViewsCount + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetLikesCount() int64 { + if x != nil { + return x.LikesCount + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetCommentsCount() int64 { + if x != nil { + return x.CommentsCount + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetSharesCount() int64 { + if x != nil { + return x.SharesCount + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetVideoCount() int64 { + if x != nil { + return x.VideoCount + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetImageCount() int64 { + if x != nil { + return x.ImageCount + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +func (x *MediaMetricsDailyInfo) GetIsSuccess() uint32 { + if x != nil { + return x.IsSuccess + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetFailReason() string { + if x != nil { + return x.FailReason + } + return "" +} + +func (x *MediaMetricsDailyInfo) GetFailType() uint32 { + if x != nil { + return x.FailType + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetCreatedAt() int32 { + if x != nil { + return x.CreatedAt + } + return 0 +} + +func (x *MediaMetricsDailyInfo) GetUpdatedAt() int32 { + if x != nil { + return x.UpdatedAt + } + return 0 +} + +// 查询账号日级指标列表响应 +type ListMediaMetricsDailyResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*MediaMetricsDailyInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 账号日级指标列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 +} + +func (x *ListMediaMetricsDailyResp) Reset() { + *x = ListMediaMetricsDailyResp{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[142] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListMediaMetricsDailyResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListMediaMetricsDailyResp) ProtoMessage() {} + +func (x *ListMediaMetricsDailyResp) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[142] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListMediaMetricsDailyResp.ProtoReflect.Descriptor instead. +func (*ListMediaMetricsDailyResp) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{142} +} + +func (x *ListMediaMetricsDailyResp) GetData() []*MediaMetricsDailyInfo { + if x != nil { + return x.Data + } + return nil +} + +func (x *ListMediaMetricsDailyResp) GetCount() int64 { + if x != nil { + return x.Count + } + return 0 +} + +// 查询作品日级指标列表请求 +type ListWorkMetricsDailyReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + IsSuccess uint32 `protobuf:"varint,1,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0表示不过滤,1表示成功,2表示失败 + FailType uint32 `protobuf:"varint,2,opt,name=failType,proto3" json:"failType"` // 失败类型 0表示不过滤,其他值表示具体的失败类型 + Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 + Date int32 `protobuf:"varint,5,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) 0表示不过滤 +} + +func (x *ListWorkMetricsDailyReq) Reset() { + *x = ListWorkMetricsDailyReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[143] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListWorkMetricsDailyReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListWorkMetricsDailyReq) ProtoMessage() {} + +func (x *ListWorkMetricsDailyReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[143] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListWorkMetricsDailyReq.ProtoReflect.Descriptor instead. +func (*ListWorkMetricsDailyReq) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{143} +} + +func (x *ListWorkMetricsDailyReq) GetIsSuccess() uint32 { + if x != nil { + return x.IsSuccess + } + return 0 +} + +func (x *ListWorkMetricsDailyReq) GetFailType() uint32 { + if x != nil { + return x.FailType + } + return 0 +} + +func (x *ListWorkMetricsDailyReq) GetPage() int32 { + if x != nil { + return x.Page + } + return 0 +} + +func (x *ListWorkMetricsDailyReq) GetPageSize() int32 { + if x != nil { + return x.PageSize + } + return 0 +} + +func (x *ListWorkMetricsDailyReq) GetDate() int32 { + if x != nil { + return x.Date + } + return 0 +} + +// 作品日级指标信息 +type WorkMetricsDailyInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID + ArtistUuid string `protobuf:"bytes,3,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + MediaAccUserID string `protobuf:"bytes,4,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID + MediaName string `protobuf:"bytes,5,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 + ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + PlatformID uint32 `protobuf:"varint,8,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion + Date int32 `protobuf:"varint,9,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) + ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + PublishMediaID string `protobuf:"bytes,14,opt,name=publishMediaID,proto3" json:"publishMediaID"` // 发布媒体ID + ProfileKey string `protobuf:"bytes,15,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key + IsSuccess uint32 `protobuf:"varint,16,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 + FailReason string `protobuf:"bytes,17,opt,name=failReason,proto3" json:"failReason"` // 失败原因 + FailType uint32 `protobuf:"varint,18,opt,name=failType,proto3" json:"failType"` // 失败类型 + CreatedAt int32 `protobuf:"varint,19,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,20,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 +} + +func (x *WorkMetricsDailyInfo) Reset() { + *x = WorkMetricsDailyInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[144] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *WorkMetricsDailyInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*WorkMetricsDailyInfo) ProtoMessage() {} + +func (x *WorkMetricsDailyInfo) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[144] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use WorkMetricsDailyInfo.ProtoReflect.Descriptor instead. +func (*WorkMetricsDailyInfo) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{144} +} + +func (x *WorkMetricsDailyInfo) GetUuid() string { + if x != nil { + return x.Uuid + } + return "" +} + +func (x *WorkMetricsDailyInfo) GetWorkUuid() string { + if x != nil { + return x.WorkUuid + } + return "" +} + +func (x *WorkMetricsDailyInfo) GetArtistUuid() string { + if x != nil { + return x.ArtistUuid + } + return "" +} + +func (x *WorkMetricsDailyInfo) GetMediaAccUserID() string { + if x != nil { + return x.MediaAccUserID + } + return "" +} + +func (x *WorkMetricsDailyInfo) GetMediaName() string { + if x != nil { + return x.MediaName + } + return "" +} + +func (x *WorkMetricsDailyInfo) GetArtistName() string { + if x != nil { + return x.ArtistName + } + return "" +} + +func (x *WorkMetricsDailyInfo) GetArtistPhone() string { + if x != nil { + return x.ArtistPhone + } + return "" +} + +func (x *WorkMetricsDailyInfo) GetPlatformID() uint32 { + if x != nil { + return x.PlatformID + } + return 0 +} + +func (x *WorkMetricsDailyInfo) GetDate() int32 { + if x != nil { + return x.Date + } + return 0 +} + +func (x *WorkMetricsDailyInfo) GetViewsCount() int64 { + if x != nil { + return x.ViewsCount + } + return 0 +} + +func (x *WorkMetricsDailyInfo) GetLikesCount() int64 { + if x != nil { + return x.LikesCount + } + return 0 +} + +func (x *WorkMetricsDailyInfo) GetCommentsCount() int64 { + if x != nil { + return x.CommentsCount + } + return 0 +} + +func (x *WorkMetricsDailyInfo) GetSharesCount() int64 { + if x != nil { + return x.SharesCount + } + return 0 +} + +func (x *WorkMetricsDailyInfo) GetPublishMediaID() string { + if x != nil { + return x.PublishMediaID + } + return "" +} + +func (x *WorkMetricsDailyInfo) GetProfileKey() string { + if x != nil { + return x.ProfileKey + } + return "" +} + +func (x *WorkMetricsDailyInfo) GetIsSuccess() uint32 { + if x != nil { + return x.IsSuccess + } + return 0 +} + +func (x *WorkMetricsDailyInfo) GetFailReason() string { + if x != nil { + return x.FailReason + } + return "" +} + +func (x *WorkMetricsDailyInfo) GetFailType() uint32 { + if x != nil { + return x.FailType + } + return 0 +} + +func (x *WorkMetricsDailyInfo) GetCreatedAt() int32 { + if x != nil { + return x.CreatedAt + } + return 0 +} + +func (x *WorkMetricsDailyInfo) GetUpdatedAt() int32 { + if x != nil { + return x.UpdatedAt + } + return 0 +} + +// 查询作品日级指标列表响应 +type ListWorkMetricsDailyResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*WorkMetricsDailyInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 作品日级指标列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 +} + +func (x *ListWorkMetricsDailyResp) Reset() { + *x = ListWorkMetricsDailyResp{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[145] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListWorkMetricsDailyResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListWorkMetricsDailyResp) ProtoMessage() {} + +func (x *ListWorkMetricsDailyResp) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[145] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListWorkMetricsDailyResp.ProtoReflect.Descriptor instead. +func (*ListWorkMetricsDailyResp) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{145} +} + +func (x *ListWorkMetricsDailyResp) GetData() []*WorkMetricsDailyInfo { + if x != nil { + return x.Data + } + return nil +} + +func (x *ListWorkMetricsDailyResp) GetCount() int64 { + if x != nil { + return x.Count + } + return 0 +} + +// 新增或更新任务请求(通过uuid判断是新增还是更新) +type UpsertTaskListReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID,为空则新增,不为空则更新 + Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action"` // 任务类型 + Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url"` // 任务链接 + Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态:1-待处理 2-处理中 3-处理完成 + OperatorID string `protobuf:"bytes,5,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID + OperatorName string `protobuf:"bytes,6,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 +} + +func (x *UpsertTaskListReq) Reset() { + *x = UpsertTaskListReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[146] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpsertTaskListReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpsertTaskListReq) ProtoMessage() {} + +func (x *UpsertTaskListReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[146] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpsertTaskListReq.ProtoReflect.Descriptor instead. +func (*UpsertTaskListReq) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{146} +} + +func (x *UpsertTaskListReq) GetUuid() string { + if x != nil { + return x.Uuid + } + return "" +} + +func (x *UpsertTaskListReq) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *UpsertTaskListReq) GetUrl() string { + if x != nil { + return x.Url + } + return "" +} + +func (x *UpsertTaskListReq) GetStatus() uint32 { + if x != nil { + return x.Status + } + return 0 +} + +func (x *UpsertTaskListReq) GetOperatorID() string { + if x != nil { + return x.OperatorID + } + return "" +} + +func (x *UpsertTaskListReq) GetOperatorName() string { + if x != nil { + return x.OperatorName + } + return "" +} + +// 新增或更新任务响应 +type UpsertTaskListResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID + Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg"` // 提示信息 +} + +func (x *UpsertTaskListResp) Reset() { + *x = UpsertTaskListResp{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[147] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *UpsertTaskListResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpsertTaskListResp) ProtoMessage() {} + +func (x *UpsertTaskListResp) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[147] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpsertTaskListResp.ProtoReflect.Descriptor instead. +func (*UpsertTaskListResp) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{147} +} + +func (x *UpsertTaskListResp) GetUuid() string { + if x != nil { + return x.Uuid + } + return "" +} + +func (x *UpsertTaskListResp) GetMsg() string { + if x != nil { + return x.Msg + } + return "" +} + +// 获取任务详情请求 +type GetTaskListReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID +} + +func (x *GetTaskListReq) Reset() { + *x = GetTaskListReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[148] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetTaskListReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetTaskListReq) ProtoMessage() {} + +func (x *GetTaskListReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[148] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetTaskListReq.ProtoReflect.Descriptor instead. +func (*GetTaskListReq) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{148} +} + +func (x *GetTaskListReq) GetUuid() string { + if x != nil { + return x.Uuid + } + return "" +} + +// 任务信息 +type TaskListInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID + Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action"` // 任务类型 + Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url"` // 任务链接 + Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态:1-待处理 2-处理中 3-处理完成 + OperatorID string `protobuf:"bytes,5,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID + OperatorName string `protobuf:"bytes,6,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 + CreatedAt string `protobuf:"bytes,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt string `protobuf:"bytes,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 +} + +func (x *TaskListInfo) Reset() { + *x = TaskListInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[149] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *TaskListInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*TaskListInfo) ProtoMessage() {} + +func (x *TaskListInfo) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[149] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use TaskListInfo.ProtoReflect.Descriptor instead. +func (*TaskListInfo) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{149} +} + +func (x *TaskListInfo) GetUuid() string { + if x != nil { + return x.Uuid + } + return "" +} + +func (x *TaskListInfo) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *TaskListInfo) GetUrl() string { + if x != nil { + return x.Url + } + return "" +} + +func (x *TaskListInfo) GetStatus() uint32 { + if x != nil { + return x.Status + } + return 0 +} + +func (x *TaskListInfo) GetOperatorID() string { + if x != nil { + return x.OperatorID + } + return "" +} + +func (x *TaskListInfo) GetOperatorName() string { + if x != nil { + return x.OperatorName + } + return "" +} + +func (x *TaskListInfo) GetCreatedAt() string { + if x != nil { + return x.CreatedAt + } + return "" +} + +func (x *TaskListInfo) GetUpdatedAt() string { + if x != nil { + return x.UpdatedAt + } + return "" +} + +// 获取任务详情响应 +type GetTaskListResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *TaskListInfo `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` // 任务信息 + Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg"` // 提示信息 +} + +func (x *GetTaskListResp) Reset() { + *x = GetTaskListResp{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[150] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetTaskListResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetTaskListResp) ProtoMessage() {} + +func (x *GetTaskListResp) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[150] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetTaskListResp.ProtoReflect.Descriptor instead. +func (*GetTaskListResp) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{150} +} + +func (x *GetTaskListResp) GetData() *TaskListInfo { + if x != nil { + return x.Data + } + return nil +} + +func (x *GetTaskListResp) GetMsg() string { + if x != nil { + return x.Msg + } + return "" +} + +// 查询任务列表请求 +type ListTaskListReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` // 任务类型(可选) + Status uint32 `protobuf:"varint,2,opt,name=status,proto3" json:"status"` // 状态(可选):1-待处理 2-处理中 3-处理完成 + OperatorID string `protobuf:"bytes,3,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID(可选) + Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 +} + +func (x *ListTaskListReq) Reset() { + *x = ListTaskListReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[151] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListTaskListReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListTaskListReq) ProtoMessage() {} + +func (x *ListTaskListReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[151] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListTaskListReq.ProtoReflect.Descriptor instead. +func (*ListTaskListReq) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{151} +} + +func (x *ListTaskListReq) GetAction() string { + if x != nil { + return x.Action + } + return "" +} + +func (x *ListTaskListReq) GetStatus() uint32 { + if x != nil { + return x.Status + } + return 0 +} + +func (x *ListTaskListReq) GetOperatorID() string { + if x != nil { + return x.OperatorID + } + return "" +} + +func (x *ListTaskListReq) GetPage() int32 { + if x != nil { + return x.Page + } + return 0 +} + +func (x *ListTaskListReq) GetPageSize() int32 { + if x != nil { + return x.PageSize + } + return 0 +} + +// 查询任务列表响应 +type ListTaskListResp struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*TaskListInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 任务列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 + Msg string `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg"` // 提示信息 +} + +func (x *ListTaskListResp) Reset() { + *x = ListTaskListResp{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[152] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ListTaskListResp) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ListTaskListResp) ProtoMessage() {} + +func (x *ListTaskListResp) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[152] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ListTaskListResp.ProtoReflect.Descriptor instead. +func (*ListTaskListResp) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{152} +} + +func (x *ListTaskListResp) GetData() []*TaskListInfo { + if x != nil { + return x.Data + } + return nil +} + +func (x *ListTaskListResp) GetCount() int64 { + if x != nil { + return x.Count + } + return 0 +} + +func (x *ListTaskListResp) GetMsg() string { + if x != nil { + return x.Msg + } + return "" +} + +// 删除任务请求 +type DeleteTaskListReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID +} + +func (x *DeleteTaskListReq) Reset() { + *x = DeleteTaskListReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[153] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteTaskListReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteTaskListReq) ProtoMessage() {} + +func (x *DeleteTaskListReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_fiee_cast_proto_msgTypes[153] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteTaskListReq.ProtoReflect.Descriptor instead. +func (*DeleteTaskListReq) Descriptor() ([]byte, []int) { + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{153} +} + +func (x *DeleteTaskListReq) GetUuid() string { + if x != nil { + return x.Uuid + } + return "" +} + type WorkListResp_Info struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - ArtistName string `protobuf:"bytes,2,opt,name=artistName,proto3" json:"artistName"` - ArtistPhone string `protobuf:"bytes,3,opt,name=artistPhone,proto3" json:"artistPhone"` - Title string `protobuf:"bytes,4,opt,name=title,proto3" json:"title"` - WorkCategory uint32 `protobuf:"varint,5,opt,name=workCategory,proto3" json:"workCategory"` - WorkStatus uint32 `protobuf:"varint,6,opt,name=workStatus,proto3" json:"workStatus"` - SubmitTime string `protobuf:"bytes,7,opt,name=submitTime,proto3" json:"submitTime"` - StatusUpdateTime string `protobuf:"bytes,8,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` - PlatformIDs []uint32 `protobuf:"varint,9,rep,packed,name=platformIDs,proto3" json:"platformIDs"` - MediaAccountNames []string `protobuf:"bytes,10,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` - MediaAccountUuids []string `protobuf:"bytes,11,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` - ManagerUserNames []string `protobuf:"bytes,12,rep,name=managerUserNames,proto3" json:"managerUserNames"` - ManagerUuids []string `protobuf:"bytes,13,rep,name=managerUuids,proto3" json:"managerUuids"` - ApprovalID string `protobuf:"bytes,14,opt,name=approvalID,proto3" json:"approvalID"` - CostType uint32 `protobuf:"varint,15,opt,name=costType,proto3" json:"costType"` - ScriptUuid string `protobuf:"bytes,16,opt,name=scriptUuid,proto3" json:"scriptUuid"` - ScriptTitle string `protobuf:"bytes,17,opt,name=scriptTitle,proto3" json:"scriptTitle"` - ArtistSubNum string `protobuf:"bytes,18,opt,name=artistSubNum,proto3" json:"artistSubNum"` - TiktokStatus uint32 `protobuf:"varint,19,opt,name=tiktokStatus,proto3" json:"tiktokStatus"` - InsStatus uint32 `protobuf:"varint,20,opt,name=insStatus,proto3" json:"insStatus"` - DmStatus uint32 `protobuf:"varint,21,opt,name=dmStatus,proto3" json:"dmStatus"` - ConfirmType uint32 `protobuf:"varint,22,opt,name=confirmType,proto3" json:"confirmType"` - YoutubeStatus uint32 `protobuf:"varint,23,opt,name=youtubeStatus,proto3" json:"youtubeStatus"` - BlueskyStatus uint32 `protobuf:"varint,24,opt,name=blueskyStatus,proto3" json:"blueskyStatus"` + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + ArtistName string `protobuf:"bytes,2,opt,name=artistName,proto3" json:"artistName"` + ArtistPhone string `protobuf:"bytes,3,opt,name=artistPhone,proto3" json:"artistPhone"` + Title string `protobuf:"bytes,4,opt,name=title,proto3" json:"title"` + WorkCategory uint32 `protobuf:"varint,5,opt,name=workCategory,proto3" json:"workCategory"` + WorkStatus uint32 `protobuf:"varint,6,opt,name=workStatus,proto3" json:"workStatus"` + SubmitTime string `protobuf:"bytes,7,opt,name=submitTime,proto3" json:"submitTime"` + StatusUpdateTime string `protobuf:"bytes,8,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` + PlatformIDs []uint32 `protobuf:"varint,9,rep,packed,name=platformIDs,proto3" json:"platformIDs"` + MediaAccountNames []string `protobuf:"bytes,10,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` + MediaAccountUuids []string `protobuf:"bytes,11,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` + ManagerUserNames []string `protobuf:"bytes,12,rep,name=managerUserNames,proto3" json:"managerUserNames"` + ManagerUuids []string `protobuf:"bytes,13,rep,name=managerUuids,proto3" json:"managerUuids"` + ApprovalID string `protobuf:"bytes,14,opt,name=approvalID,proto3" json:"approvalID"` + CostType uint32 `protobuf:"varint,15,opt,name=costType,proto3" json:"costType"` + ScriptUuid string `protobuf:"bytes,16,opt,name=scriptUuid,proto3" json:"scriptUuid"` + ScriptTitle string `protobuf:"bytes,17,opt,name=scriptTitle,proto3" json:"scriptTitle"` + ArtistSubNum string `protobuf:"bytes,18,opt,name=artistSubNum,proto3" json:"artistSubNum"` + TiktokStatus uint32 `protobuf:"varint,19,opt,name=tiktokStatus,proto3" json:"tiktokStatus"` + InsStatus uint32 `protobuf:"varint,20,opt,name=insStatus,proto3" json:"insStatus"` + DmStatus uint32 `protobuf:"varint,21,opt,name=dmStatus,proto3" json:"dmStatus"` + ConfirmType uint32 `protobuf:"varint,22,opt,name=confirmType,proto3" json:"confirmType"` + Remark string `protobuf:"bytes,23,opt,name=remark,proto3" json:"remark"` + Status1Time string `protobuf:"bytes,24,opt,name=status1Time,proto3" json:"status1Time"` + Status4Time string `protobuf:"bytes,25,opt,name=status4Time,proto3" json:"status4Time"` + Status9Time string `protobuf:"bytes,26,opt,name=status9Time,proto3" json:"status9Time"` + Status6Time string `protobuf:"bytes,27,opt,name=status6Time,proto3" json:"status6Time"` + PublishMediaIDs map[string]string `protobuf:"bytes,28,rep,name=PublishMediaIDs,proto3" json:"PublishMediaIDs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + YoutubeStatus uint32 `protobuf:"varint,29,opt,name=youtubeStatus,proto3" json:"youtubeStatus"` + BlueskyStatus uint32 `protobuf:"varint,30,opt,name=blueskyStatus,proto3" json:"blueskyStatus"` } func (x *WorkListResp_Info) Reset() { *x = WorkListResp_Info{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[138] + mi := &file_pb_fiee_cast_proto_msgTypes[154] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12106,7 +13695,7 @@ func (x *WorkListResp_Info) String() string { func (*WorkListResp_Info) ProtoMessage() {} func (x *WorkListResp_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[138] + mi := &file_pb_fiee_cast_proto_msgTypes[154] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12119,7 +13708,7 @@ func (x *WorkListResp_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use WorkListResp_Info.ProtoReflect.Descriptor instead. func (*WorkListResp_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{18, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{19, 0} } func (x *WorkListResp_Info) GetWorkUuid() string { @@ -12276,6 +13865,48 @@ func (x *WorkListResp_Info) GetConfirmType() uint32 { return 0 } +func (x *WorkListResp_Info) GetRemark() string { + if x != nil { + return x.Remark + } + return "" +} + +func (x *WorkListResp_Info) GetStatus1Time() string { + if x != nil { + return x.Status1Time + } + return "" +} + +func (x *WorkListResp_Info) GetStatus4Time() string { + if x != nil { + return x.Status4Time + } + return "" +} + +func (x *WorkListResp_Info) GetStatus9Time() string { + if x != nil { + return x.Status9Time + } + return "" +} + +func (x *WorkListResp_Info) GetStatus6Time() string { + if x != nil { + return x.Status6Time + } + return "" +} + +func (x *WorkListResp_Info) GetPublishMediaIDs() map[string]string { + if x != nil { + return x.PublishMediaIDs + } + return nil +} + func (x *WorkListResp_Info) GetYoutubeStatus() uint32 { if x != nil { return x.YoutubeStatus @@ -12306,7 +13937,7 @@ type MediaAccountsResp_Info struct { func (x *MediaAccountsResp_Info) Reset() { *x = MediaAccountsResp_Info{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[140] + mi := &file_pb_fiee_cast_proto_msgTypes[157] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12319,7 +13950,7 @@ func (x *MediaAccountsResp_Info) String() string { func (*MediaAccountsResp_Info) ProtoMessage() {} func (x *MediaAccountsResp_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[140] + mi := &file_pb_fiee_cast_proto_msgTypes[157] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12332,7 +13963,7 @@ func (x *MediaAccountsResp_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaAccountsResp_Info.ProtoReflect.Descriptor instead. func (*MediaAccountsResp_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{24, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{25, 0} } func (x *MediaAccountsResp_Info) GetPlatformID() uint32 { @@ -12397,7 +14028,7 @@ type MediaWorksResp_Info struct { func (x *MediaWorksResp_Info) Reset() { *x = MediaWorksResp_Info{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[141] + mi := &file_pb_fiee_cast_proto_msgTypes[158] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12410,7 +14041,7 @@ func (x *MediaWorksResp_Info) String() string { func (*MediaWorksResp_Info) ProtoMessage() {} func (x *MediaWorksResp_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[141] + mi := &file_pb_fiee_cast_proto_msgTypes[158] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12423,7 +14054,7 @@ func (x *MediaWorksResp_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use MediaWorksResp_Info.ProtoReflect.Descriptor instead. func (*MediaWorksResp_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{26, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{27, 0} } func (x *MediaWorksResp_Info) GetWorkUuid() string { @@ -12508,7 +14139,7 @@ type PublishResp_Info struct { func (x *PublishResp_Info) Reset() { *x = PublishResp_Info{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[142] + mi := &file_pb_fiee_cast_proto_msgTypes[159] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12521,7 +14152,7 @@ func (x *PublishResp_Info) String() string { func (*PublishResp_Info) ProtoMessage() {} func (x *PublishResp_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[142] + mi := &file_pb_fiee_cast_proto_msgTypes[159] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12534,7 +14165,7 @@ func (x *PublishResp_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use PublishResp_Info.ProtoReflect.Descriptor instead. func (*PublishResp_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{28, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{29, 0} } func (x *PublishResp_Info) GetArtistUuid() string { @@ -12564,7 +14195,7 @@ type RefreshWorkListResp_Info struct { func (x *RefreshWorkListResp_Info) Reset() { *x = RefreshWorkListResp_Info{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[143] + mi := &file_pb_fiee_cast_proto_msgTypes[160] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12577,7 +14208,7 @@ func (x *RefreshWorkListResp_Info) String() string { func (*RefreshWorkListResp_Info) ProtoMessage() {} func (x *RefreshWorkListResp_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[143] + mi := &file_pb_fiee_cast_proto_msgTypes[160] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12590,7 +14221,7 @@ func (x *RefreshWorkListResp_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use RefreshWorkListResp_Info.ProtoReflect.Descriptor instead. func (*RefreshWorkListResp_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{43, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{44, 0} } func (x *RefreshWorkListResp_Info) GetWorkUuid() string { @@ -12630,7 +14261,7 @@ type RefreshWorkListResp_Info_PlatformInfo struct { func (x *RefreshWorkListResp_Info_PlatformInfo) Reset() { *x = RefreshWorkListResp_Info_PlatformInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[144] + mi := &file_pb_fiee_cast_proto_msgTypes[161] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12643,7 +14274,7 @@ func (x *RefreshWorkListResp_Info_PlatformInfo) String() string { func (*RefreshWorkListResp_Info_PlatformInfo) ProtoMessage() {} func (x *RefreshWorkListResp_Info_PlatformInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[144] + mi := &file_pb_fiee_cast_proto_msgTypes[161] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12656,7 +14287,7 @@ func (x *RefreshWorkListResp_Info_PlatformInfo) ProtoReflect() protoreflect.Mess // Deprecated: Use RefreshWorkListResp_Info_PlatformInfo.ProtoReflect.Descriptor instead. func (*RefreshWorkListResp_Info_PlatformInfo) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{43, 0, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{44, 0, 0} } func (x *RefreshWorkListResp_Info_PlatformInfo) GetPublishMediaID() string { @@ -12716,7 +14347,7 @@ type UpdateOAuthReq_Info struct { func (x *UpdateOAuthReq_Info) Reset() { *x = UpdateOAuthReq_Info{} if protoimpl.UnsafeEnabled { - mi := &file_pb_fiee_cast_proto_msgTypes[145] + mi := &file_pb_fiee_cast_proto_msgTypes[162] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -12729,7 +14360,7 @@ func (x *UpdateOAuthReq_Info) String() string { func (*UpdateOAuthReq_Info) ProtoMessage() {} func (x *UpdateOAuthReq_Info) ProtoReflect() protoreflect.Message { - mi := &file_pb_fiee_cast_proto_msgTypes[145] + mi := &file_pb_fiee_cast_proto_msgTypes[162] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -12742,7 +14373,7 @@ func (x *UpdateOAuthReq_Info) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateOAuthReq_Info.ProtoReflect.Descriptor instead. func (*UpdateOAuthReq_Info) Descriptor() ([]byte, []int) { - return file_pb_fiee_cast_proto_rawDescGZIP(), []int{52, 0} + return file_pb_fiee_cast_proto_rawDescGZIP(), []int{53, 0} } func (x *UpdateOAuthReq_Info) GetArtistUuid() string { @@ -12790,404 +14421,450 @@ var file_pb_fiee_cast_proto_rawDesc = []byte{ 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, - 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc8, - 0x03, 0x0a, 0x10, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, - 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x56, 0x61, - 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, - 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x34, 0x0a, - 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, - 0x69, 0x7a, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, - 0x69, 0x7a, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, - 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, - 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, - 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, - 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, - 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x61, - 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6e, - 0x65, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, - 0x6e, 0x65, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x22, 0xa3, 0x05, 0x0a, 0x0d, 0x4d, 0x65, - 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2a, 0x0a, 0x10, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, - 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, - 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, - 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, - 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, - 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, - 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, - 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, - 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x61, - 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x65, 0x6e, - 0x64, 0x69, 0x6e, 0x67, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x69, 0x64, - 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x75, 0x70, 0x6c, 0x6f, 0x61, - 0x64, 0x65, 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x12, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x56, 0x69, 0x64, - 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x72, 0x65, 0x6c, 0x65, 0x61, - 0x73, 0x65, 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x12, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x56, 0x69, 0x64, - 0x65, 0x6f, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, - 0x6e, 0x67, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x50, - 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, - 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x50, 0x6f, 0x73, - 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x72, 0x65, - 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x22, - 0x52, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, - 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x22, 0xd1, 0x03, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, - 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, - 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, - 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x26, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, - 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, - 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, - 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, - 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, - 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, - 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, - 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, - 0x4e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0x44, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x3e, 0x0a, - 0x10, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, - 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x41, 0x0a, - 0x11, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x11, 0x6f, 0x6c, 0x64, 0x42, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x74, - 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6f, - 0x6c, 0x64, 0x42, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, - 0x22, 0x88, 0x01, 0x0a, 0x0e, 0x42, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, - 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, - 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, - 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, - 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, - 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, - 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xb1, 0x07, 0x0a, 0x12, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, - 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, - 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, - 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, - 0x4d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x3b, - 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, 0x12, 0x3b, 0x0a, 0x0e, 0x70, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, - 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, - 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, - 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x33, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x34, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, - 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, - 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x55, 0x75, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, - 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, - 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, - 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, - 0x75, 0x72, 0x63, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x18, 0x12, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, - 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, - 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x14, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x22, 0x0a, 0x0c, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x15, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, - 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x16, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, - 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, - 0x17, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, - 0x64, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x35, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, - 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, - 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x22, - 0x31, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, - 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, - 0x69, 0x64, 0x22, 0xbf, 0x01, 0x0a, 0x0d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24, 0x0a, 0x0d, 0x66, 0x6f, 0x72, 0x62, 0x69, 0x64, 0x43, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x6f, 0x72, - 0x62, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x75, - 0x62, 0x6c, 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, - 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x61, - 0x6e, 0x4a, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x61, 0x6e, - 0x4a, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x6e, 0x51, 0x75, 0x6f, 0x74, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x61, 0x6e, 0x51, 0x75, 0x6f, 0x74, 0x65, - 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x61, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x41, 0x49, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, - 0x69, 0x73, 0x41, 0x49, 0x22, 0xca, 0x07, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, - 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, - 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x76, - 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, - 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, - 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, - 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, - 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, - 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, - 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, - 0x36, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x07, - 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, - 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x31, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, - 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x32, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, - 0x69, 0x67, 0x33, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, - 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, - 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x12, 0x3b, - 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x12, 0x16, 0x0a, 0x06, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, - 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, - 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, - 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, - 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, - 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, - 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x12, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x63, - 0x6f, 0x76, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4d, 0x73, 0x18, - 0x13, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, - 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4d, 0x73, 0x12, 0x37, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x43, - 0x61, 0x73, 0x74, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x45, - 0x4e, 0x55, 0x4d, 0x52, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, - 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x15, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, - 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, - 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, - 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, - 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x35, 0x22, 0x31, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, - 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, - 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, - 0x55, 0x75, 0x69, 0x64, 0x22, 0x90, 0x01, 0x0a, 0x0c, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, - 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, - 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, - 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, - 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x38, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, - 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, - 0x6f, 0x22, 0x6e, 0x0a, 0x16, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, - 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x3c, + 0x0a, 0x06, 0x41, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x41, 0x73, 0x49, 0x44, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x41, 0x73, 0x49, 0x44, 0x22, 0xe8, 0x03, 0x0a, + 0x10, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, + 0x1e, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x12, + 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, - 0x44, 0x22, 0x42, 0x0a, 0x17, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, - 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x04, + 0x44, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, + 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x44, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, + 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x75, 0x74, + 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x61, 0x75, 0x74, + 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x65, 0x65, + 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6e, 0x65, + 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x65, 0x64, 0x41, + 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6e, 0x65, 0x65, + 0x64, 0x41, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xc9, 0x05, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, + 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, + 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, + 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x75, 0x74, + 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x61, 0x75, 0x74, + 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x65, 0x6e, 0x64, 0x69, + 0x6e, 0x67, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x11, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, + 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x12, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, + 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x12, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x50, 0x6f, 0x73, + 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x75, 0x70, + 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x2c, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x54, + 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x72, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x24, 0x0a, + 0x06, 0x61, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x61, 0x73, 0x49, + 0x6e, 0x66, 0x6f, 0x22, 0x52, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xd1, 0x03, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, + 0x71, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x2a, 0x0a, + 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, + 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, + 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, + 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, + 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0x44, 0x0a, 0x16, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x22, 0x3e, 0x0a, 0x10, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x22, 0x41, 0x0a, 0x11, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x11, 0x6f, 0x6c, 0x64, 0x42, 0x69, 0x6e, + 0x64, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x11, 0x6f, 0x6c, 0x64, 0x42, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x22, 0x88, 0x01, 0x0a, 0x0e, 0x42, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, + 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, + 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, + 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, + 0xb1, 0x07, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, + 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x2c, + 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c, 0x0a, 0x11, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x0b, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0e, 0x32, + 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, + 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, 0x12, + 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0x12, 0x3b, 0x0a, 0x0e, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, + 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x13, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, + 0x6f, 0x64, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, + 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, + 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x12, 0x16, + 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, + 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, + 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x73, 0x18, 0x17, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x35, 0x22, 0x31, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, + 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, + 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, + 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0xbf, 0x01, 0x0a, 0x0d, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24, 0x0a, 0x0d, 0x66, 0x6f, 0x72, 0x62, + 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0d, 0x66, 0x6f, 0x72, 0x62, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, + 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x61, 0x6e, 0x4a, 0x6f, 0x69, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x07, 0x63, 0x61, 0x6e, 0x4a, 0x6f, 0x69, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x6e, 0x51, + 0x75, 0x6f, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x61, 0x6e, 0x51, + 0x75, 0x6f, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x61, 0x6e, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x73, 0x41, 0x49, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x69, 0x73, 0x41, 0x49, 0x22, 0xca, 0x07, 0x0a, 0x12, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x71, 0x12, + 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, + 0x1a, 0x0a, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x63, + 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, + 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, + 0x6d, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0b, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x32, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x33, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x34, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, + 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x12, + 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, + 0x6e, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, + 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x11, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, + 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, + 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x4d, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4d, 0x73, 0x12, 0x37, 0x0a, 0x0b, 0x61, + 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, + 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x35, 0x22, 0x31, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0x90, 0x01, 0x0a, 0x0c, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, + 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, + 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x38, 0x0a, 0x0d, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x99, 0x06, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, - 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x56, 0x61, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, - 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, - 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, - 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, - 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, - 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, - 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x30, 0x0a, - 0x13, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x45, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, - 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, - 0x56, 0x61, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x61, 0x6e, 0x61, 0x67, - 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, - 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x0e, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, - 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, - 0x75, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, - 0x4e, 0x75, 0x6d, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, - 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, - 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x69, - 0x6e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, - 0x69, 0x6e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6d, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6d, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x79, 0x6f, - 0x75, 0x74, 0x75, 0x62, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x62, - 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x16, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x22, 0x9a, 0x07, 0x0a, 0x0c, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, - 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0xc6, 0x06, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, - 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x14, 0x0a, 0x05, - 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, - 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, - 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, - 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, - 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, - 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x49, 0x44, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, - 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, - 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, - 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, - 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x61, 0x6e, 0x61, - 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, - 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x0d, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x73, - 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x0e, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, - 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x22, - 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x12, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, - 0x75, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, - 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, - 0x62, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x62, 0x6c, 0x75, 0x65, - 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0d, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x2b, + 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x6e, 0x0a, 0x16, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, + 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x22, 0x42, 0x0a, 0x17, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, + 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, + 0x12, 0x27, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0xb9, 0x08, 0x0a, 0x0b, 0x57, 0x6f, + 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, + 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, + 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x28, 0x0a, 0x0f, 0x73, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, + 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, + 0x74, 0x61, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x12, 0x30, 0x0a, 0x13, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, + 0x45, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, + 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, + 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, + 0x55, 0x73, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x12, 0x12, 0x0a, + 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x2c, 0x0a, + 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, + 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, + 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x74, + 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x13, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, + 0x08, 0x64, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x08, 0x64, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x31, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x31, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, + 0x54, 0x69, 0x6d, 0x65, 0x31, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, + 0x54, 0x69, 0x6d, 0x65, 0x31, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x34, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x34, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, + 0x34, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, + 0x34, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x39, 0x18, + 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x39, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x39, 0x18, 0x1a, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x39, 0x12, 0x1e, 0x0a, + 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x36, 0x18, 0x1b, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x36, 0x12, 0x1a, 0x0a, + 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x36, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x36, 0x12, 0x2e, 0x0a, 0x12, 0x4e, 0x65, 0x65, + 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, + 0x1d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x4e, 0x65, 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x79, 0x6f, 0x75, + 0x74, 0x75, 0x62, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x24, 0x0a, 0x0d, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xd6, 0x09, 0x0a, 0x0c, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x82, 0x09, 0x0a, 0x04, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, + 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, + 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, + 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0a, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, + 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x73, + 0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, + 0x75, 0x69, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, + 0x49, 0x44, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x61, 0x6c, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x10, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, + 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x54, 0x69, 0x74, + 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, + 0x75, 0x6d, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x69, + 0x6b, 0x74, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, + 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, + 0x6e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6d, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6d, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x54, + 0x79, 0x70, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, + 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x20, + 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x31, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x18, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x31, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x34, 0x54, 0x69, 0x6d, 0x65, 0x18, + 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x34, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x39, 0x54, 0x69, 0x6d, + 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x39, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x36, 0x54, + 0x69, 0x6d, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x36, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x56, 0x0a, 0x0f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x73, 0x18, 0x1c, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x2c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0f, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x73, 0x12, 0x24, + 0x0a, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x6c, 0x75, + 0x65, 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0x42, 0x0a, 0x14, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x2b, 0x0a, 0x0d, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0xfb, 0x01, 0x0a, 0x0b, @@ -13206,7 +14883,7 @@ var file_pb_fiee_cast_proto_rawDesc = []byte{ 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, - 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xd0, 0x08, 0x0a, 0x0e, 0x57, 0x6f, + 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xf0, 0x08, 0x0a, 0x0e, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, @@ -13266,8 +14943,10 @@ var file_pb_fiee_cast_proto_rawDesc = []byte{ 0x20, 0x03, 0x28, 0x05, 0x52, 0x0f, 0x6e, 0x65, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, - 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x18, 0x1b, 0x20, 0x01, 0x28, + 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x1a, 0x54, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, @@ -13275,7 +14954,7 @@ var file_pb_fiee_cast_proto_rawDesc = []byte{ 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x29, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xca, 0x02, 0x0a, + 0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xaf, 0x03, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, @@ -13296,729 +14975,726 @@ var file_pb_fiee_cast_proto_rawDesc = []byte{ 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x22, 0x32, 0x0a, 0x10, 0x4d, 0x65, 0x64, - 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0xa2, 0x02, - 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xda, 0x01, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, - 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x1c, - 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, - 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, - 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, - 0x6d, 0x65, 0x22, 0x6b, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, - 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, - 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, - 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, - 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, - 0x8a, 0x03, 0x0a, 0x0e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2d, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, - 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xb2, 0x02, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, - 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, - 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, - 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, - 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, - 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6d, - 0x61, 0x67, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, - 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x22, 0x2a, 0x0a, 0x0a, - 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x6f, - 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x77, - 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x73, 0x22, 0x85, 0x01, 0x0a, 0x0b, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x1a, 0x4a, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, - 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, - 0x22, 0x86, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, - 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2c, 0x0a, - 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, - 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, - 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x53, 0x0a, 0x0d, 0x52, 0x65, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, - 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x28, - 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x57, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, - 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0x29, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, - 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, - 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, - 0x75, 0x69, 0x64, 0x22, 0xe6, 0x01, 0x0a, 0x0c, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, - 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x55, 0x75, 0x69, 0x64, 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, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, - 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, - 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, - 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, - 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x2f, 0x0a, 0x0d, - 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0xd4, 0x01, - 0x0a, 0x0e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x12, 0x32, 0x0a, 0x14, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, - 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x15, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x45, - 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x15, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x45, 0x66, 0x66, 0x65, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x49, 0x6e, - 0x73, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x49, 0x6e, 0x73, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x44, 0x4d, 0x45, 0x66, - 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x10, 0x44, 0x4d, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4e, 0x0a, 0x12, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, - 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x38, 0x0a, 0x0a, 0x69, 0x6d, - 0x61, 0x67, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, - 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, - 0x6f, 0x72, 0x6b, 0x73, 0x22, 0x91, 0x01, 0x0a, 0x13, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, - 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x38, 0x0a, 0x0a, - 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, - 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, - 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, - 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, - 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, - 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xdd, 0x02, 0x0a, 0x0c, 0x50, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, - 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, - 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, - 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, - 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, 0x70, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, - 0x73, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, - 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, - 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x12, 0x3d, 0x0a, - 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, - 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0d, 0x70, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, - 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, - 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x55, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, 0x64, 0x22, 0x5b, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x3e, 0x0a, 0x10, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x10, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, - 0x6f, 0x44, 0x61, 0x74, 0x61, 0x22, 0x38, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, - 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, - 0x9b, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, - 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, - 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, - 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, - 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x16, 0x0a, - 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3a, 0x0a, - 0x12, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x75, 0x62, 0x6c, - 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xe2, 0x03, 0x0a, 0x13, 0x52, 0x65, - 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x32, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, - 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x04, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x96, 0x03, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, - 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x57, 0x0a, 0x10, 0x50, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, - 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, - 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x10, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, - 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, - 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, - 0x4b, 0x65, 0x79, 0x1a, 0xf8, 0x01, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, - 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x75, - 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x12, 0x34, 0x0a, 0x0a, - 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x49, 0x44, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, - 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, - 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, - 0x65, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3d, - 0x0a, 0x0f, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x24, 0x0a, - 0x10, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x75, 0x72, 0x6c, 0x22, 0x3f, 0x0a, 0x11, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, + 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3f, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x72, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x32, + 0x0a, 0x10, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, + 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x22, 0xa2, 0x02, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xda, 0x01, 0x0a, 0x04, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x6b, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, + 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x55, 0x75, 0x69, 0x64, 0x22, 0x8e, 0x01, 0x0a, 0x12, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x61, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x61, - 0x75, 0x74, 0x68, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, - 0x74, 0x68, 0x55, 0x72, 0x6c, 0x22, 0x56, 0x0a, 0x14, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x59, 0x6f, - 0x75, 0x74, 0x75, 0x62, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, - 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x7d, 0x0a, - 0x15, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x59, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, - 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x66, 0x72, - 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, - 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, - 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x77, 0x0a, 0x13, - 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, - 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, - 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x22, 0x16, 0x0a, 0x14, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, - 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0xf8, 0x01, - 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, - 0x12, 0x2d, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, - 0x68, 0x52, 0x65, 0x71, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x1a, - 0xb6, 0x01, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, - 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, - 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, - 0x0a, 0x04, 0x61, 0x73, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x73, - 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, - 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x61, 0x75, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x61, 0x75, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x83, 0x01, 0x0a, 0x0f, 0x52, 0x65, 0x66, - 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, - 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, - 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x5c, - 0x0a, 0x10, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, - 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, - 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x7f, 0x0a, 0x13, - 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, - 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, - 0x2c, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, 0x69, 0x61, - 0x55, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, 0x22, 0x94, 0x01, - 0x0a, 0x14, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, - 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x49, 0x44, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, - 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, - 0x12, 0x12, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x9e, 0x02, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, - 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, - 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, + 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, + 0x53, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, + 0x53, 0x69, 0x7a, 0x65, 0x22, 0x8a, 0x03, 0x0a, 0x0e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, + 0x72, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2d, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0xb2, 0x02, 0x0a, + 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, - 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, - 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, - 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, - 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, - 0x75, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, - 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x4e, 0x75, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, - 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x2b, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, - 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, - 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, - 0x69, 0x64, 0x22, 0x27, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x8c, 0x03, 0x0a, 0x12, - 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, - 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, - 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, - 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, - 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, - 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, - 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, - 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, - 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, - 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, - 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, - 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x22, 0xb5, 0x02, 0x0a, 0x13, 0x4c, - 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, - 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x26, 0x0a, 0x0e, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, - 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x6f, 0x72, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, - 0x64, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0d, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, - 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, - 0x7a, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, - 0x7a, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, - 0x69, 0x64, 0x22, 0xa5, 0x03, 0x0a, 0x0f, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, - 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, - 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, - 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, - 0x72, 0x6b, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, - 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x57, 0x0a, 0x14, 0x4c, 0x69, - 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x29, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, - 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x22, 0x2a, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x69, 0x64, - 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, + 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x69, 0x64, + 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x69, 0x64, + 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, + 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, + 0x6c, 0x22, 0x2a, 0x0a, 0x0a, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, + 0x1c, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x73, 0x22, 0x85, 0x01, + 0x0a, 0x0b, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x4a, 0x0a, 0x04, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x86, 0x01, 0x0a, 0x0c, 0x52, 0x65, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, + 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x22, 0x6f, + 0x0a, 0x0d, 0x52, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, + 0x6f, 0x72, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, + 0x28, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x57, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, + 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0x29, 0x0a, 0x0b, 0x57, 0x6f, 0x72, + 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, + 0x55, 0x75, 0x69, 0x64, 0x22, 0xe6, 0x01, 0x0a, 0x0c, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, + 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, + 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, + 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x2f, 0x0a, + 0x0d, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x8c, + 0x02, 0x0a, 0x0e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, + 0x70, 0x12, 0x32, 0x0a, 0x14, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x45, 0x66, 0x66, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x14, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x15, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, + 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x45, 0x66, 0x66, + 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x49, + 0x6e, 0x73, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x49, 0x6e, 0x73, 0x45, 0x66, 0x66, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x44, 0x4d, 0x45, + 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x10, 0x44, 0x4d, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0x4e, 0x0a, + 0x12, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x65, 0x71, 0x12, 0x38, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x72, 0x6b, + 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, + 0x71, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x22, 0x91, 0x01, + 0x0a, 0x13, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x38, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, 0x6f, + 0x72, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, + 0x52, 0x65, 0x71, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x12, + 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x22, 0xdd, 0x02, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, + 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x26, + 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x22, 0x0a, + 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, + 0x64, 0x22, 0x5b, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x3e, + 0x0a, 0x10, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61, + 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x10, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x22, 0x38, + 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0x9b, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, + 0x67, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x16, + 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3a, 0x0a, 0x12, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, + 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x22, 0xe2, 0x03, 0x0a, 0x13, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, + 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x32, 0x0a, 0x04, 0x44, 0x61, + 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x96, + 0x03, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x57, 0x0a, 0x10, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x6e, 0x66, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x10, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x1a, 0xf8, 0x01, 0x0a, + 0x0c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x26, 0x0a, + 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x49, 0x44, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, + 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x2e, 0x0a, 0x12, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, + 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3d, 0x0a, 0x0f, 0x4f, 0x41, 0x75, 0x74, 0x68, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x24, 0x0a, 0x10, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, + 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0x3f, 0x0a, 0x11, + 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, + 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x8e, 0x01, + 0x0a, 0x12, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, + 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x72, 0x6c, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x72, 0x6c, 0x22, 0x56, + 0x0a, 0x14, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x59, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x54, 0x6f, + 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x7d, 0x0a, 0x15, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x59, + 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x20, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x77, 0x0a, 0x13, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, + 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, + 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, + 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x22, 0x16, + 0x0a, 0x14, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0xf8, 0x01, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x12, 0x2d, 0x0a, 0x04, 0x44, 0x61, 0x74, + 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x2e, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x1a, 0xb6, 0x01, 0x0a, 0x04, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x73, 0x49, 0x44, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x73, 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x49, 0x6e, + 0x66, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, 0x74, 0x49, 0x6e, 0x66, + 0x6f, 0x22, 0x83, 0x01, 0x0a, 0x0f, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, + 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, + 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, + 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x5c, 0x0a, 0x10, 0x52, 0x65, 0x66, 0x72, 0x65, + 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x61, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x26, 0x0a, + 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x7f, 0x0a, 0x13, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, 0x22, 0x94, 0x01, 0x0a, 0x14, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x2c, 0x0a, 0x11, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x6e, 0x66, + 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x22, 0x0a, + 0x08, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x22, 0x9e, 0x02, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, + 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x14, + 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x20, + 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, + 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, + 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, + 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, + 0x75, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, + 0x6d, 0x65, 0x22, 0x2b, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, + 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, - 0x46, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x29, 0x0a, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, - 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x89, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x29, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, - 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x22, 0xa7, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, - 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, - 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, - 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, - 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, - 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x56, 0x0a, - 0x0c, 0x53, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, - 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x6f, 0x72, - 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6f, 0x72, - 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x42, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, - 0x75, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1a, 0x0a, - 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3f, 0x0a, 0x0d, 0x47, 0x65, 0x74, - 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, - 0x0a, 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x79, 0x0a, 0x0f, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, - 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, - 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, - 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, - 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, - 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x08, 0x63, 0x61, 0x74, - 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x31, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, - 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, - 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, - 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x2e, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x50, - 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, - 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, - 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x93, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74, - 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, + 0x27, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x8c, 0x03, 0x0a, 0x12, 0x47, 0x65, 0x74, + 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, + 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, + 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x20, 0x0a, + 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x12, + 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, + 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, + 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x22, 0xb5, 0x02, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, + 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, + 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x26, 0x0a, + 0x0e, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, + 0x77, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, + 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x12, + 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, + 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, + 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, + 0xa5, 0x03, 0x0a, 0x0f, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x71, 0x75, 0x6f, + 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x71, + 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x44, 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x75, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x18, 0x0a, + 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x57, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x29, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x22, 0x2a, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x46, 0x0a, 0x19, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x29, 0x0a, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x22, 0x89, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x29, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x22, + 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x22, 0xa7, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x72, 0x69, 0x70, + 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, 0x0a, 0x77, 0x6f, + 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, + 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x61, 0x6c, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, + 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, + 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x56, 0x0a, 0x0c, 0x53, 0x65, + 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, + 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, + 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, + 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, + 0x6d, 0x65, 0x22, 0x42, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, + 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x6f, + 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6f, + 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3f, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, + 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x66, + 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, + 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x79, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, - 0x72, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xe4, - 0x01, 0x0a, 0x0e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x52, 0x65, - 0x71, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x72, 0x79, 0x22, 0x31, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x2e, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x93, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, + 0x6d, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, + 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, + 0x2e, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, + 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xe4, 0x01, 0x0a, 0x0e, + 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16, + 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, + 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x08, 0x63, 0x61, + 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x22, 0xfc, 0x01, 0x0a, 0x0a, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x63, 0x61, 0x74, - 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x52, - 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, - 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x24, 0x0a, - 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x55, 0x73, 0x65, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xfc, 0x01, 0x0a, 0x0a, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, - 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x08, - 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, - 0x55, 0x4d, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, - 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, - 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1a, - 0x0a, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x69, - 0x6e, 0x65, 0x4e, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x69, 0x6e, 0x65, - 0x4e, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, - 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x44, 0x61, 0x74, 0x65, 0x22, 0x4d, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, - 0x70, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, + 0x61, 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, + 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x75, + 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x75, + 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x4e, + 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x12, + 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, + 0x65, 0x22, 0x4d, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x22, 0x3c, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x7f, + 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x61, + 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x6f, - 0x6d, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, - 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x22, 0x3c, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, - 0x6d, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x04, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, - 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x22, 0x7f, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, - 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x22, 0x7a, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, - 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x72, 0x65, 0x66, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0x57, - 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x71, 0x12, 0x30, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, - 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, - 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x55, 0x75, 0x69, 0x64, 0x22, 0x32, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x61, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x2e, 0x0a, 0x0c, 0x47, - 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x55, 0x0a, 0x0d, 0x47, - 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, - 0x0a, 0x04, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x75, - 0x69, 0x64, 0x22, 0xa7, 0x06, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, - 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, + 0x6d, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, + 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, + 0x7a, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, + 0x05, 0x72, 0x65, 0x66, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, + 0x66, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0x57, 0x0a, 0x0f, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x30, + 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x12, 0x0a, 0x04, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x55, 0x75, 0x69, 0x64, 0x22, 0x32, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x2e, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x41, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x55, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x41, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x75, 0x69, 0x64, 0x22, + 0xa7, 0x06, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, + 0x75, 0x62, 0x4e, 0x75, 0x6d, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, + 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, + 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, + 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, + 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, + 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, + 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, + 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, + 0x69, 0x65, 0x77, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x69, 0x65, 0x77, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x0f, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x66, + 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, + 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, + 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, + 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x22, 0x0a, + 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x13, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, + 0x61, 0x6e, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x18, 0x16, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, + 0x65, 0x77, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x2e, 0x0a, + 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2a, 0x0a, + 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, + 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, + 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x22, 0x2c, 0x0a, 0x16, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0xd1, 0x05, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, + 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, + 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x12, + 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, + 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, + 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, + 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, + 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x69, + 0x65, 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, 0x0a, + 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, + 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, + 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, + 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x55, 0x49, + 0x44, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x55, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x46, 0x61, 0x6e, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, + 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x18, 0x12, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, + 0x56, 0x69, 0x65, 0x77, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, + 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x12, + 0x2e, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, + 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, + 0x72, 0x65, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x22, 0xb7, 0x02, 0x0a, 0x1b, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, 0x0a, 0x77, + 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, + 0x6c, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, + 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, + 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x24, 0x0a, 0x0d, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x6d, 0x61, 0x72, + 0x6b, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, + 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x54, 0x79, 0x70, 0x65, 0x22, 0xc9, 0x02, 0x0a, 0x13, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, + 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x2e, 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x77, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x2c, 0x0a, 0x11, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, + 0x44, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x61, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, + 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, + 0x44, 0x22, 0xfe, 0x01, 0x0a, 0x16, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, - 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, - 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, - 0x69, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, - 0x69, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, - 0x72, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, - 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, - 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, - 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, - 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, - 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, - 0x69, 0x65, 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, - 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, - 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, - 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, - 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x12, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, - 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, - 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x65, - 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x0f, - 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x18, - 0x16, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, - 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, - 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, - 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, - 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, - 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, - 0x61, 0x72, 0x65, 0x73, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, 0x72, 0x69, - 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x22, 0x2c, 0x0a, 0x16, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, - 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0xd1, 0x05, 0x0a, 0x15, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, - 0x73, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, - 0x79, 0x73, 0x69, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, - 0x79, 0x73, 0x69, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, - 0x66, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, - 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, - 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, - 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, - 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x14, 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, - 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, - 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, - 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, - 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, - 0x61, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, - 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x55, 0x55, 0x49, 0x44, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, - 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, - 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x12, 0x28, - 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, - 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, - 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, - 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, - 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, - 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, - 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, - 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, - 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x22, 0xb7, - 0x02, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, - 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x34, - 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, - 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, - 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x72, - 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x24, - 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, - 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, - 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, - 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, - 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x6e, - 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x22, 0xc9, 0x02, 0x0a, 0x13, 0x57, 0x6f, 0x72, - 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, - 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, - 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, - 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, - 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, - 0x69, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, - 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x61, - 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, - 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x49, 0x44, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x6f, 0x72, 0x49, 0x44, 0x22, 0xfe, 0x01, 0x0a, 0x16, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, - 0x6c, 0x79, 0x73, 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, - 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, - 0x75, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, - 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x81, 0x02, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, - 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, - 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, - 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, - 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, - 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, - 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, - 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, - 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x81, 0x02, 0x0a, 0x17, 0x57, 0x6f, - 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, - 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, - 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, - 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, - 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, - 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, - 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, - 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, - 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, - 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, - 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8a, 0x02, - 0x0a, 0x1a, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, - 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, - 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, + 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, + 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x22, 0x81, 0x02, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, + 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, + 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x81, 0x02, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, + 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, @@ -14030,1141 +15706,1379 @@ var file_pb_fiee_cast_proto_rawDesc = []byte{ 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x84, 0x02, 0x0a, 0x18, 0x57, - 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, - 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, - 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, - 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, - 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, - 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, - 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, - 0x74, 0x22, 0x87, 0x01, 0x0a, 0x15, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, - 0x69, 0x73, 0x54, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, - 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, - 0x1e, 0x0a, 0x0a, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x12, - 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, - 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8b, 0x01, 0x0a, 0x19, - 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, - 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, - 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, - 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8a, 0x01, 0x0a, 0x18, 0x57, 0x6f, - 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, - 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8a, 0x02, 0x0a, 0x1a, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x24, 0x0a, + 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, + 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x84, 0x02, 0x0a, 0x18, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, + 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, + 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, + 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x87, + 0x01, 0x0a, 0x15, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, + 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, + 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8b, 0x01, 0x0a, 0x19, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0xc1, 0x01, 0x0a, 0x11, 0x57, 0x6f, 0x72, 0x6b, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x22, 0x0a, 0x0c, - 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x55, 0x75, 0x69, 0x64, - 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, - 0x6d, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x61, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, - 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x2e, 0x0a, 0x18, 0x47, 0x65, - 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x32, 0x0a, 0x18, 0x47, 0x65, - 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, - 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0xef, - 0x0b, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, - 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, - 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, - 0x75, 0x6d, 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, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, - 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, - 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, - 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, - 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, - 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, - 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x20, - 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, - 0x63, 0x6f, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x10, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, - 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, - 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, - 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, - 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, - 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, - 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, - 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, - 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, - 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x17, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, - 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, - 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, - 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x44, 0x61, 0x79, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, - 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, - 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x3c, 0x0a, 0x0a, 0x66, 0x61, - 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, - 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0a, 0x66, 0x61, - 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x76, 0x69, 0x65, 0x77, - 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, - 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x76, 0x69, - 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x6c, 0x69, 0x6b, - 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, - 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x6c, - 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x48, 0x0a, 0x0e, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x21, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, - 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, - 0x72, 0x69, 0x65, 0x73, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, - 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, - 0x72, 0x69, 0x65, 0x73, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, - 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x68, - 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0c, 0x73, 0x68, 0x61, 0x72, - 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x0f, 0x74, 0x6f, 0x70, 0x43, - 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, - 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x0f, - 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, - 0x51, 0x0a, 0x13, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, - 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x43, - 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, - 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x52, 0x13, 0x6d, - 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, 0x69, - 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x12, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, - 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x12, - 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, - 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, - 0x26, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, - 0x22, 0xf1, 0x0c, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, - 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, - 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, - 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, - 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, - 0x79, 0x73, 0x69, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, - 0x79, 0x73, 0x69, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, - 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, - 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x77, 0x6f, 0x72, 0x6b, - 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, - 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, - 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, - 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x73, 0x74, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, - 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, - 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, - 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, - 0x72, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, - 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, - 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, - 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, - 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, - 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, - 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, - 0x69, 0x65, 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x16, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, - 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, - 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, - 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, - 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x1b, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, - 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x12, 0x4b, 0x0a, 0x13, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, - 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x1d, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, - 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x13, 0x57, 0x6f, - 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, - 0x61, 0x12, 0x3c, 0x0a, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, - 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, - 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, - 0x69, 0x65, 0x73, 0x52, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, - 0x3f, 0x0a, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x1f, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, - 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, - 0x69, 0x65, 0x73, 0x52, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, - 0x12, 0x3f, 0x0a, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, - 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, - 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, - 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, - 0x73, 0x12, 0x48, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, - 0x69, 0x65, 0x73, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, - 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0e, 0x63, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x22, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, - 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, - 0x73, 0x52, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, - 0x45, 0x0a, 0x0f, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, - 0x65, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x6f, 0x70, 0x43, - 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x0f, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, - 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x51, 0x0a, 0x13, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x24, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x44, 0x61, 0x79, 0x52, 0x13, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x12, 0x62, 0x65, 0x73, - 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, - 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, - 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, - 0x74, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x12, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, - 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x78, 0x74, - 0x72, 0x61, 0x18, 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, - 0x61, 0x52, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x27, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x64, 0x41, 0x74, 0x18, 0x28, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x41, 0x74, 0x22, 0xc9, 0x03, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, - 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, - 0x75, 0x75, 0x69, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, - 0x75, 0x75, 0x69, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, - 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, - 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, 0x16, - 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, - 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, - 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, - 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x30, - 0x0a, 0x13, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, - 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, - 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, - 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, - 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x75, - 0x62, 0x6d, 0x69, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, - 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, - 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x0c, - 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4c, 0x69, 0x73, 0x74, - 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, - 0x22, 0xe4, 0x03, 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, - 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, - 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, - 0x6d, 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, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, 0x0a, - 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, - 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x06, 0x20, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8a, 0x01, 0x0a, 0x18, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x22, 0xc1, 0x01, 0x0a, 0x11, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x55, 0x75, 0x69, 0x64, 0x12, 0x30, 0x0a, + 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, + 0x54, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x2e, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x32, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x4c, 0x61, + 0x74, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0xef, 0x0b, 0x0a, 0x13, + 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, + 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, - 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x09, 0x20, + 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x63, - 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, - 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, - 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, - 0x55, 0x72, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, - 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, - 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, - 0x44, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x22, 0x58, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x57, - 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x2a, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, - 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x22, 0x2b, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0xa5, - 0x02, 0x0a, 0x11, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, - 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, - 0x61, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, - 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x65, 0x78, - 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x26, - 0x0a, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, - 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, - 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, - 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, - 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, - 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xd4, 0x05, 0x0a, 0x12, 0x41, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x0a, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, - 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x6e, - 0x64, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x3a, 0x0a, - 0x18, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x18, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x12, 0x64, 0x61, 0x74, - 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, - 0x73, 0x69, 0x73, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x44, 0x0a, 0x1d, 0x64, 0x61, 0x74, - 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x1d, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, - 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, - 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, - 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, - 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, - 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x61, 0x73, 0x74, 0x57, 0x6f, 0x72, - 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x61, - 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x65, - 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, - 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, - 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x58, 0x0a, - 0x12, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, - 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, - 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xac, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x64, 0x69, - 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, - 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, - 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, - 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x85, 0x04, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, - 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, - 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, - 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, - 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x61, 0x73, 0x74, - 0x57, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0d, 0x63, 0x61, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, - 0x0a, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, - 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x56, - 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, - 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x25, 0x0a, 0x0f, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, - 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x22, 0xc0, 0x06, - 0x0a, 0x10, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, - 0x73, 0x70, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x11, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x46, 0x61, 0x6e, 0x73, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x74, 0x6f, 0x64, 0x61, - 0x79, 0x46, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, - 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, - 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, - 0x64, 0x61, 0x79, 0x56, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x56, 0x69, 0x65, 0x77, 0x73, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x4c, 0x69, 0x6b, - 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, - 0x6f, 0x64, 0x61, 0x79, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, - 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x12, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, - 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x53, - 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x10, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x49, 0x6d, 0x61, 0x67, 0x65, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, - 0x61, 0x79, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, - 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, - 0x74, 0x6f, 0x64, 0x61, 0x79, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x56, 0x69, 0x64, 0x65, - 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, - 0x6d, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x34, 0x0a, 0x15, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, - 0x72, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x15, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, - 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x16, 0x74, 0x6f, 0x42, 0x65, - 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x03, 0x52, 0x16, 0x74, 0x6f, 0x42, 0x65, 0x43, 0x6f, - 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x2e, 0x0a, 0x12, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, - 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x61, 0x70, - 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x22, 0x90, 0x02, 0x0a, 0x16, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, - 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x70, - 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, - 0x61, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, - 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, - 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x12, 0x28, 0x0a, - 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, - 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, - 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, - 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, - 0x72, 0x65, 0x73, 0x22, 0xf2, 0x03, 0x0a, 0x17, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, - 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x3c, 0x0a, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, - 0x73, 0x52, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, - 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, + 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x73, + 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, + 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, + 0x64, 0x66, 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, + 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, + 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x14, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x15, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, + 0x65, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, + 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x19, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x1a, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, + 0x24, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, + 0x18, 0x1b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, + 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x3c, 0x0a, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x46, + 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x56, 0x69, + 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, + 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x6c, 0x69, 0x6b, 0x65, + 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x48, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, + 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x0f, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x54, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x0f, 0x74, 0x6f, 0x70, + 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x51, 0x0a, 0x13, + 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, + 0x69, 0x65, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, + 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x52, 0x13, 0x6d, 0x6f, 0x73, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, + 0x4e, 0x0a, 0x12, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, + 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x12, 0x62, 0x65, 0x73, + 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, + 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x26, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0xf1, 0x0c, + 0x0a, 0x19, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, + 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, + 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x77, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, + 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, + 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, + 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, + 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, + 0x6c, 0x49, 0x44, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, + 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x18, + 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, + 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, + 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, + 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, + 0x69, 0x65, 0x77, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x69, 0x65, 0x77, + 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x18, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x66, + 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, + 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, + 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, + 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x22, 0x0a, + 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x1c, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x4b, 0x0a, 0x13, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x13, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x3c, + 0x0a, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x1e, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x52, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, + 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x52, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, + 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, - 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, - 0x73, 0x52, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, - 0x0a, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, - 0x65, 0x73, 0x52, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, - 0x48, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, - 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, - 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, - 0x73, 0x69, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, - 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, - 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, - 0x69, 0x6d, 0x65, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x45, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, - 0x61, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, - 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, - 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x22, 0x71, 0x0a, 0x1b, 0x41, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, - 0x6e, 0x64, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x55, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, - 0x69, 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x22, 0x37, 0x0a, 0x0b, 0x53, - 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, - 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x14, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x22, 0x47, 0x0a, 0x11, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, - 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, - 0x6d, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x3c, 0x0a, - 0x12, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x50, 0x6f, - 0x69, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x03, 0x64, 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x94, 0x04, 0x0a, 0x1c, - 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, - 0x6c, 0x79, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x09, - 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x52, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x48, + 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0c, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x0f, + 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, + 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, + 0x65, 0x73, 0x52, 0x0f, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, + 0x69, 0x65, 0x73, 0x12, 0x51, 0x0a, 0x13, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, + 0x79, 0x52, 0x13, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x12, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, + 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x25, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x52, 0x12, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, + 0x26, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x52, 0x05, + 0x65, 0x78, 0x74, 0x72, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x18, 0x27, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x18, 0x28, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x22, 0xc9, 0x03, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x75, 0x69, + 0x64, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x75, 0x75, 0x69, + 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x1c, 0x0a, + 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, + 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, + 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x30, 0x0a, 0x13, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x45, + 0x6e, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x28, 0x0a, + 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, + 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x0c, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0xe4, 0x03, + 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x2e, 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x77, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, + 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, + 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x0e, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x14, + 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x22, 0x58, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2b, + 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0xa5, 0x02, 0x0a, 0x11, + 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, + 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x2a, 0x0a, 0x10, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x65, 0x78, 0x70, 0x69, 0x72, + 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x65, + 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, + 0x45, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x24, 0x0a, + 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x45, 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, + 0x69, 0x7a, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, + 0x69, 0x7a, 0x65, 0x22, 0xd4, 0x05, 0x0a, 0x12, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, + 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, + 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, + 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, + 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4e, 0x61, + 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x3a, 0x0a, 0x18, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x18, 0x61, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x12, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x12, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x44, 0x0a, 0x1d, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x1d, 0x64, + 0x61, 0x74, 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x75, + 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a, + 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, + 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, - 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, - 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, - 0x6e, 0x74, 0x12, 0x25, 0x0a, 0x04, 0x66, 0x61, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, - 0x69, 0x6e, 0x74, 0x52, 0x04, 0x66, 0x61, 0x6e, 0x73, 0x12, 0x27, 0x0a, 0x05, 0x76, 0x69, 0x65, - 0x77, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x69, 0x65, - 0x77, 0x73, 0x12, 0x27, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, - 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x08, 0x63, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, - 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x06, 0x73, 0x68, - 0x61, 0x72, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, - 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x06, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, - 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, - 0x73, 0x74, 0x2e, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x50, - 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x12, 0x3e, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, - 0x44, 0x61, 0x79, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, - 0x2e, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x50, 0x6f, - 0x69, 0x6e, 0x74, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, - 0x61, 0x79, 0x22, 0x66, 0x0a, 0x14, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, - 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, - 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xff, 0x03, 0x0a, 0x11, 0x54, - 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, - 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x75, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, - 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, - 0x67, 0x6f, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, - 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x77, 0x6f, - 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, - 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, - 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, - 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, - 0x64, 0x41, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, - 0x72, 0x6d, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, - 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, - 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, - 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x0f, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, - 0x0a, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, - 0x04, 0x52, 0x09, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x5a, 0x0a, 0x15, - 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, - 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x55, 0x0a, 0x1f, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, - 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, - 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, - 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x22, - 0xed, 0x03, 0x0a, 0x15, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x26, 0x0a, - 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, - 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, - 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, - 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, + 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x61, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x61, 0x73, 0x74, 0x57, + 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, + 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x65, + 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, + 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x58, 0x0a, 0x12, 0x41, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, + 0x52, 0x65, 0x73, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, + 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xac, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, + 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, + 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, + 0x69, 0x7a, 0x65, 0x22, 0x85, 0x04, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, + 0x61, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, + 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, + 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, + 0x6f, 0x6e, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, + 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, + 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, + 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, + 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x61, 0x73, 0x74, 0x57, 0x6f, 0x72, + 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x61, + 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, + 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x69, + 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x56, 0x0a, 0x11, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, + 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, + 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x22, 0x25, 0x0a, 0x0f, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, + 0x69, 0x65, 0x77, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x22, 0xc0, 0x06, 0x0a, 0x10, 0x44, + 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x22, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, + 0x74, 0x6f, 0x64, 0x61, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x26, 0x0a, 0x0e, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x46, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x46, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, + 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, + 0x56, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x56, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, 0x61, + 0x79, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x74, + 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x53, 0x68, 0x61, 0x72, + 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x74, + 0x6f, 0x64, 0x61, 0x79, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x1e, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x28, 0x0a, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x49, + 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x64, + 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, + 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, 0x64, + 0x61, 0x79, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, 0x61, + 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x34, 0x0a, 0x15, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, + 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, + 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, 0x61, 0x74, 0x61, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x16, 0x74, 0x6f, 0x42, 0x65, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x13, 0x20, 0x01, 0x28, 0x03, 0x52, 0x16, 0x74, 0x6f, 0x42, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, + 0x12, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x61, 0x70, 0x70, 0x72, 0x6f, + 0x76, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x90, 0x02, + 0x0a, 0x16, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, + 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, + 0x65, 0x77, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, + 0x69, 0x6b, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x22, 0xf2, 0x03, 0x0a, 0x17, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3c, 0x0a, 0x0a, + 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0a, + 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x76, 0x69, + 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, + 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x6c, + 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, + 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x48, 0x0a, 0x0e, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0c, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x62, 0x65, + 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x45, + 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x44, 0x61, 0x79, 0x22, 0x71, 0x0a, 0x1b, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, 0x6e, 0x64, 0x6f, + 0x77, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x55, + 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x55, 0x55, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x22, 0x37, 0x0a, 0x0b, 0x53, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x22, 0x47, 0x0a, 0x11, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x50, 0x6f, + 0x69, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x50, + 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x3c, 0x0a, 0x12, 0x4d, 0x6f, + 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x64, + 0x61, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x94, 0x04, 0x0a, 0x1c, 0x41, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, + 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, + 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, + 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, - 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, + 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x1e, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, - 0x52, 0x0a, 0x1f, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, - 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x65, 0x71, 0x12, 0x2f, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, - 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, - 0x61, 0x74, 0x61, 0x22, 0x3c, 0x0a, 0x20, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, - 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, - 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, - 0x73, 0x22, 0xaa, 0x03, 0x0a, 0x14, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, - 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1a, - 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x25, 0x0a, 0x04, 0x66, 0x61, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x52, 0x04, 0x66, 0x61, 0x6e, 0x73, 0x12, 0x27, 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, + 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, + 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x12, + 0x27, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, + 0x74, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, + 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x50, 0x6f, 0x69, 0x6e, + 0x74, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x3e, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, + 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x6f, + 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x22, + 0x66, 0x0a, 0x14, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, + 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xff, 0x03, 0x0a, 0x11, 0x54, 0x6f, 0x62, 0x65, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, + 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, + 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x41, 0x74, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, + 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x0e, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, + 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, + 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x5a, 0x0a, 0x15, 0x54, 0x6f, 0x62, + 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, + 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x55, 0x0a, 0x1f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, 0x70, 0x72, 0x6f, + 0x76, 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, + 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x22, 0xe7, 0x04, 0x0a, + 0x15, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, + 0x6c, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x65, - 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, - 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, - 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, - 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x50, - 0x0a, 0x1e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, - 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, - 0x12, 0x2e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, - 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x22, 0x3b, 0x0a, 0x1f, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, - 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x9a, 0x01, - 0x0a, 0x18, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, - 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, - 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, - 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, - 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x9a, 0x02, 0x0a, 0x12, 0x41, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, - 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x14, 0x0a, - 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, - 0x66, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, - 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, - 0x4b, 0x65, 0x79, 0x12, 0x2e, 0x0a, 0x12, 0x61, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x12, 0x61, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, - 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x5f, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x41, 0x72, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, + 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x61, + 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x66, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, + 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x61, + 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0x52, 0x0a, 0x1f, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, + 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x2f, 0x0a, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, + 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3c, 0x0a, 0x20, 0x55, 0x70, + 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, + 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, + 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0xcc, 0x04, 0x0a, 0x14, 0x57, 0x6f, 0x72, + 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x74, 0x65, + 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, + 0x72, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, + 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, + 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, + 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x12, 0x1e, 0x0a, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, + 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x66, + 0x61, 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x66, + 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, + 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0x50, 0x0a, 0x1e, 0x55, 0x70, 0x73, 0x65, 0x72, + 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, + 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x2e, 0x0a, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, + 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, + 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3b, 0x0a, 0x1f, 0x55, 0x70, 0x73, + 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, + 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, + 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x9a, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, + 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, + 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, + 0x69, 0x7a, 0x65, 0x22, 0x9a, 0x02, 0x0a, 0x12, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, + 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x2e, 0x0a, 0x12, + 0x61, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x61, 0x79, 0x72, 0x53, 0x68, 0x61, + 0x72, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x22, 0x5f, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, + 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, + 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x22, 0x9b, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, + 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, + 0x2e, 0x0a, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, + 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, + 0x88, 0x04, 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, + 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, + 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, + 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, + 0x49, 0x44, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x22, 0x5c, 0x0a, 0x18, 0x4c, 0x69, + 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x9b, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, - 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, - 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, - 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, - 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x88, 0x04, 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6b, 0x50, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, - 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, - 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, - 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, - 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x20, 0x0a, - 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, - 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, - 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, - 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, - 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, - 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, - 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, - 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, - 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, - 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, - 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0f, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, - 0x65, 0x22, 0x5c, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, - 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x61, - 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2a, - 0x54, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, - 0x4d, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, - 0x0a, 0x06, 0x54, 0x49, 0x4b, 0x54, 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x59, 0x4f, - 0x55, 0x54, 0x55, 0x42, 0x45, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x49, 0x4e, 0x53, 0x10, 0x03, - 0x12, 0x06, 0x0a, 0x02, 0x44, 0x4d, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x42, 0x55, 0x4c, 0x45, - 0x53, 0x4b, 0x59, 0x10, 0x05, 0x2a, 0x39, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, - 0x57, 0x4e, 0x41, 0x75, 0x74, 0x68, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x75, 0x74, 0x68, - 0x4f, 0x6b, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x75, 0x74, 0x68, 0x4e, 0x6f, 0x10, 0x02, - 0x2a, 0x81, 0x01, 0x0a, 0x0e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, - 0x4e, 0x55, 0x4d, 0x12, 0x0d, 0x0a, 0x09, 0x4e, 0x4f, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, - 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x52, 0x4d, 0x10, 0x01, 0x12, - 0x0c, 0x0a, 0x08, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x11, 0x0a, - 0x0d, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x10, 0x03, - 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x4a, - 0x45, 0x43, 0x54, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, - 0x4c, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x52, 0x45, - 0x41, 0x44, 0x10, 0x06, 0x2a, 0x56, 0x0a, 0x0f, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, - 0x69, 0x73, 0x68, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x75, 0x74, 0x6f, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x55, 0x4e, 0x4b, 0x4f, 0x4e, 0x57, 0x10, 0x00, 0x12, - 0x14, 0x0a, 0x10, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x54, - 0x52, 0x55, 0x45, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x10, 0x02, 0x2a, 0xa6, 0x01, 0x0a, - 0x11, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, - 0x55, 0x4d, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, - 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x4f, 0x10, 0x00, 0x12, 0x1a, 0x0a, - 0x16, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x5f, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, - 0x44, 0x4f, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, - 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x46, 0x41, 0x49, - 0x4c, 0x10, 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, - 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, - 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x2a, 0x59, 0x0a, 0x0c, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, - 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x14, 0x0a, 0x10, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, - 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x54, - 0x49, 0x54, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, - 0x54, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x10, 0x03, 0x12, 0x10, - 0x0a, 0x0c, 0x4c, 0x4f, 0x4e, 0x47, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x10, 0x04, - 0x32, 0xbd, 0x23, 0x0a, 0x04, 0x43, 0x61, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x0d, 0x4d, 0x65, 0x64, - 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, - 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, - 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x51, 0x0a, - 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x1a, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, - 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, - 0x12, 0x42, 0x0a, 0x0d, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, - 0x72, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, - 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, - 0x2e, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, - 0x73, 0x70, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0b, 0x42, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, - 0x67, 0x65, 0x72, 0x12, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x42, 0x69, 0x6e, 0x64, 0x4d, - 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, - 0x79, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, - 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, - 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, - 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x48, 0x0a, - 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, - 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, - 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, - 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, - 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x09, 0x4d, 0x65, 0x64, 0x69, 0x61, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, - 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, - 0x54, 0x0a, 0x13, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, - 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, - 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, - 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x08, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, - 0x74, 0x12, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x0a, 0x57, 0x6f, - 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, - 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, - 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, - 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, - 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x0a, 0x4d, 0x65, - 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x30, 0x0a, 0x07, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, - 0x12, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, - 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, - 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x09, 0x52, 0x65, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x50, 0x75, - 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x52, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, - 0x35, 0x0a, 0x07, 0x44, 0x65, 0x6c, 0x57, 0x6f, 0x72, 0x6b, 0x12, 0x10, 0x2e, 0x43, 0x61, 0x73, - 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x57, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, - 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x08, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, - 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x0a, 0x41, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, - 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x14, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, - 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, - 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, - 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, - 0x12, 0x5d, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x2e, 0x43, 0x61, 0x73, - 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x43, 0x61, - 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, - 0x4f, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x75, 0x62, - 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x12, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, - 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, - 0x12, 0x48, 0x0a, 0x0f, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, - 0x69, 0x73, 0x74, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, - 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x4f, 0x41, - 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, - 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x4f, - 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x12, 0x17, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x56, 0x32, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, - 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, - 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x10, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, - 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, - 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, - 0x71, 0x1a, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, - 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, - 0x3d, 0x0a, 0x0b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x12, 0x14, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, - 0x68, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x3f, - 0x0a, 0x0c, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x15, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, - 0x65, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, - 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, - 0x4b, 0x0a, 0x10, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, - 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, - 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1a, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, - 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x38, 0x0a, 0x04, - 0x54, 0x65, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x1a, 0x16, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, - 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x1a, 0x2e, 0x43, 0x61, - 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, - 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, - 0x71, 0x1a, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, - 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, - 0x10, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x73, 0x12, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, - 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x43, - 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, - 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x49, 0x0a, 0x11, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, - 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x69, 0x64, - 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, - 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x5d, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, - 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, - 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, - 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, - 0x1a, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, - 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, - 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x2e, 0x43, 0x61, 0x73, - 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, - 0x00, 0x12, 0x36, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x12, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, - 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, - 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x09, 0x53, 0x65, 0x74, - 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x65, - 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, - 0x74, 0x79, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, - 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, - 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, - 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, - 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, - 0x6d, 0x70, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, - 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, - 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3c, - 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x12, 0x14, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, - 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, - 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, - 0x68, 0x12, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, - 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, - 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x12, 0x15, 0x2e, 0x43, - 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, 0x0a, - 0x09, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, - 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x13, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, - 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, 0x2e, 0x43, 0x61, - 0x73, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, - 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, - 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, - 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, - 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, - 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x12, 0x21, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, - 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x54, - 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, - 0x73, 0x12, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, - 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, - 0x71, 0x1a, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, - 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, - 0x73, 0x70, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, - 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1e, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x57, 0x6f, - 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, - 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x10, 0x4c, 0x69, - 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x19, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, - 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, - 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, - 0x74, 0x79, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, - 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, - 0x61, 0x6c, 0x49, 0x44, 0x12, 0x25, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, - 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, - 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, - 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, - 0x1a, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, - 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, - 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, - 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, - 0x12, 0x3f, 0x0a, 0x0c, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, - 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, - 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, - 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x73, 0x70, 0x22, - 0x00, 0x12, 0x54, 0x0a, 0x13, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, - 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, - 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, 0x72, - 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x63, 0x0a, 0x18, 0x41, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, 0x6e, - 0x64, 0x6f, 0x77, 0x12, 0x21, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, 0x6e, - 0x64, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x22, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, - 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, - 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, - 0x74, 0x12, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, - 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, - 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x6f, 0x0a, 0x1c, - 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, - 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x25, 0x2e, 0x43, - 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, - 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x65, 0x71, 0x1a, 0x26, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, + 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x98, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, - 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x6c, 0x0a, - 0x1b, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, - 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x24, 0x2e, 0x43, - 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, - 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x65, 0x71, 0x1a, 0x25, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, - 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, - 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x15, 0x47, - 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x57, - 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1e, - 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, - 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x63, 0x61, 0x73, 0x74, 0x3b, 0x63, 0x61, 0x73, 0x74, 0x62, - 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6c, 0x79, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, + 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, + 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, + 0x61, 0x74, 0x65, 0x22, 0xa3, 0x05, 0x0a, 0x15, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, + 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, + 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, + 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, + 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, + 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, + 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x13, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x62, 0x0a, 0x19, 0x4c, 0x69, 0x73, + 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, + 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2f, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x97, 0x01, + 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, + 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x73, + 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, + 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, + 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, + 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x22, 0x88, 0x05, 0x0a, 0x14, 0x57, 0x6f, 0x72, 0x6b, + 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x75, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, + 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, + 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x61, + 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x66, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, + 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x61, + 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x22, 0x60, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2e, + 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, + 0x61, 0x69, 0x6c, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, + 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xad, 0x01, 0x0a, 0x11, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x54, + 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, + 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, + 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, + 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x0a, 0x12, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x54, 0x61, + 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x10, + 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, + 0x22, 0x24, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0xe4, 0x01, 0x0a, 0x0c, 0x54, 0x61, 0x73, 0x6b, 0x4c, + 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, + 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, + 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, + 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x4b, 0x0a, + 0x0f, 0x47, 0x65, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x12, 0x26, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, + 0x66, 0x6f, 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, 0x91, 0x01, 0x0a, 0x0f, 0x4c, + 0x69, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, + 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, + 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x12, + 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, + 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x62, + 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x26, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, + 0x73, 0x67, 0x22, 0x27, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x2a, 0x54, 0x0a, 0x0e, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x0b, 0x0a, + 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x49, + 0x4b, 0x54, 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x59, 0x4f, 0x55, 0x54, 0x55, 0x42, + 0x45, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x49, 0x4e, 0x53, 0x10, 0x03, 0x12, 0x06, 0x0a, 0x02, + 0x44, 0x4d, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x42, 0x55, 0x4c, 0x45, 0x53, 0x4b, 0x59, 0x10, + 0x05, 0x2a, 0x39, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, + 0x4e, 0x55, 0x4d, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x41, 0x75, + 0x74, 0x68, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x75, 0x74, 0x68, 0x4f, 0x6b, 0x10, 0x01, + 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x75, 0x74, 0x68, 0x4e, 0x6f, 0x10, 0x02, 0x2a, 0x81, 0x01, 0x0a, + 0x0e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x4e, 0x55, 0x4d, 0x12, + 0x0d, 0x0a, 0x09, 0x4e, 0x4f, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x00, 0x12, 0x0b, + 0x0a, 0x07, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x52, 0x4d, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x41, + 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x50, 0x50, + 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, + 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x10, + 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x5f, 0x44, 0x45, + 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x52, 0x45, 0x41, 0x44, 0x10, 0x06, + 0x2a, 0x56, 0x0a, 0x0f, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x45, + 0x4e, 0x55, 0x4d, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x5f, 0x55, 0x4e, 0x4b, 0x4f, 0x4e, 0x57, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x41, + 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x54, 0x52, 0x55, 0x45, 0x10, + 0x01, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x5f, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x10, 0x02, 0x2a, 0xa6, 0x01, 0x0a, 0x11, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x19, + 0x0a, 0x15, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x4f, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, + 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x44, 0x4f, 0x4e, 0x45, + 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x10, 0x03, 0x12, + 0x20, 0x0a, 0x1c, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, 0x49, 0x4f, 0x4e, 0x10, + 0x04, 0x2a, 0x65, 0x0a, 0x0f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x46, 0x61, 0x69, 0x6c, + 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x46, + 0x61, 0x69, 0x6c, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x4e, 0x4f, 0x10, 0x00, 0x12, 0x1d, 0x0a, 0x19, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x45, 0x4e, 0x55, 0x4d, 0x5f, + 0x4e, 0x4f, 0x54, 0x45, 0x4e, 0x4f, 0x55, 0x47, 0x48, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x45, + 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02, 0x2a, 0x59, 0x0a, 0x0c, 0x43, 0x61, 0x74, 0x65, + 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x14, 0x0a, 0x10, 0x55, 0x4e, 0x4b, 0x4e, + 0x4f, 0x57, 0x4e, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, 0x10, 0x00, 0x12, 0x09, + 0x0a, 0x05, 0x54, 0x49, 0x54, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f, 0x4e, + 0x54, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4d, 0x41, 0x47, 0x45, 0x10, + 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x4e, 0x47, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, + 0x54, 0x10, 0x04, 0x32, 0xf6, 0x26, 0x0a, 0x04, 0x43, 0x61, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x0d, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, + 0x12, 0x51, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, + 0x61, 0x67, 0x65, 0x72, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x6e, 0x62, 0x69, + 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, + 0x72, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0b, 0x42, 0x69, 0x6e, 0x64, 0x4d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x12, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x42, 0x69, + 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, + 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, + 0x12, 0x48, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, 0x69, + 0x64, 0x65, 0x6f, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x09, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, + 0x22, 0x00, 0x12, 0x54, 0x0a, 0x13, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, + 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x08, 0x57, 0x6f, 0x72, 0x6b, + 0x4c, 0x69, 0x73, 0x74, 0x12, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, + 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, + 0x0a, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x13, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, + 0x1a, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, + 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, + 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, + 0x0a, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x13, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x71, + 0x1a, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, + 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x30, 0x0a, 0x07, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x12, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x09, 0x52, 0x65, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, + 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x52, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, + 0x22, 0x00, 0x12, 0x35, 0x0a, 0x07, 0x44, 0x65, 0x6c, 0x57, 0x6f, 0x72, 0x6b, 0x12, 0x10, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x57, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x1a, + 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x08, 0x57, 0x6f, 0x72, + 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, + 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, + 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x13, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, + 0x71, 0x1a, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x49, 0x6d, 0x70, + 0x6f, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x18, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, + 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x49, 0x6d, + 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, + 0x70, 0x22, 0x00, 0x12, 0x5d, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, + 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x20, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, + 0x22, 0x00, 0x12, 0x4f, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x12, 0x1d, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, + 0x79, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, + 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, + 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, + 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, + 0x0c, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x15, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x45, + 0x0a, 0x0e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, + 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, + 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x10, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, + 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, + 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x12, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4f, + 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, + 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, + 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x10, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, + 0x71, 0x1a, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, + 0x31, 0x0a, 0x05, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x0e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, + 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, + 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x10, 0x4c, 0x69, 0x73, + 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x12, 0x19, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x49, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x1a, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, + 0x00, 0x12, 0x5d, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1f, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, + 0x12, 0x4b, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x36, 0x0a, + 0x09, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x13, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x09, 0x53, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, + 0x75, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x65, 0x74, 0x4c, 0x61, 0x79, + 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, + 0x12, 0x3f, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, + 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, + 0x22, 0x00, 0x12, 0x36, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, + 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x0b, 0x4c, 0x69, + 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x12, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, + 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x1a, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, + 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x09, 0x47, 0x65, 0x74, + 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, + 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, + 0x00, 0x12, 0x51, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, + 0x00, 0x12, 0x57, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x21, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, + 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x0f, 0x47, 0x65, + 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1e, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, + 0x12, 0x54, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x19, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, + 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, + 0x12, 0x5f, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, + 0x12, 0x25, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, + 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, + 0x69, 0x73, 0x74, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, + 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, + 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x12, 0x15, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, + 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x4f, + 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x54, 0x0a, + 0x13, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, + 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x22, 0x00, 0x12, 0x63, 0x0a, 0x18, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x12, + 0x21, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x52, + 0x65, 0x71, 0x1a, 0x22, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, 0x6e, 0x64, + 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, 0x54, 0x6f, 0x62, 0x65, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1a, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x6f, 0x0a, 0x1c, 0x55, 0x70, 0x73, 0x65, + 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, + 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x25, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, + 0x26, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, + 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x6c, 0x0a, 0x1b, 0x55, 0x70, 0x73, + 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, + 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x24, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, + 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x25, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, + 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, + 0x12, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x71, + 0x1a, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x73, + 0x70, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x12, 0x1d, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, + 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x15, + 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, + 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, + 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, + 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, + 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, + 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, + 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, + 0x69, 0x73, 0x74, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, + 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3c, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x54, + 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, + 0x65, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, + 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, + 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x42, 0x0d, 0x5a, 0x0b, + 0x2e, 0x2f, 0x63, 0x61, 0x73, 0x74, 0x3b, 0x63, 0x61, 0x73, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x33, } var ( @@ -15179,395 +17093,432 @@ func file_pb_fiee_cast_proto_rawDescGZIP() []byte { return file_pb_fiee_cast_proto_rawDescData } -var file_pb_fiee_cast_proto_enumTypes = make([]protoimpl.EnumInfo, 6) -var file_pb_fiee_cast_proto_msgTypes = make([]protoimpl.MessageInfo, 146) +var file_pb_fiee_cast_proto_enumTypes = make([]protoimpl.EnumInfo, 7) +var file_pb_fiee_cast_proto_msgTypes = make([]protoimpl.MessageInfo, 163) var file_pb_fiee_cast_proto_goTypes = []interface{}{ (PlatformIDENUM)(0), // 0: Cast.PlatformIDENUM (AuthStatusENUM)(0), // 1: Cast.AuthStatusENUM (WorkActionENUM)(0), // 2: Cast.WorkActionENUM (AutoPublishENUM)(0), // 3: Cast.AutoPublishENUM (PublishStatusENUM)(0), // 4: Cast.PublishStatusENUM - (CategoryENUM)(0), // 5: Cast.CategoryENUM - (*MediaUserListReq)(nil), // 6: Cast.MediaUserListReq - (*MediaUserInfo)(nil), // 7: Cast.MediaUserInfo - (*MediaUserListResp)(nil), // 8: Cast.MediaUserListResp - (*UpdateMediaAccountReq)(nil), // 9: Cast.UpdateMediaAccountReq - (*UpdateMediaAccountResp)(nil), // 10: Cast.UpdateMediaAccountResp - (*UnbindManagerReq)(nil), // 11: Cast.UnbindManagerReq - (*UnbindManagerResp)(nil), // 12: Cast.UnbindManagerResp - (*BindManagerReq)(nil), // 13: Cast.BindManagerReq - (*UpdateWorkImageReq)(nil), // 14: Cast.UpdateWorkImageReq - (*UpdateWorkImageResp)(nil), // 15: Cast.UpdateWorkImageResp - (*PublishConfig)(nil), // 16: Cast.PublishConfig - (*UpdateWorkVideoReq)(nil), // 17: Cast.UpdateWorkVideoReq - (*UpdateWorkVideoResp)(nil), // 18: Cast.UpdateWorkVideoResp - (*MediaInfoReq)(nil), // 19: Cast.MediaInfoReq - (*MediaInfoResp)(nil), // 20: Cast.MediaInfoResp - (*MediaInfoByPlatformReq)(nil), // 21: Cast.MediaInfoByPlatformReq - (*MediaInfoByPlatformResp)(nil), // 22: Cast.MediaInfoByPlatformResp - (*WorkListReq)(nil), // 23: Cast.WorkListReq - (*WorkListResp)(nil), // 24: Cast.WorkListResp - (*WorkDetailReq)(nil), // 25: Cast.WorkDetailReq - (*WorkLogInfo)(nil), // 26: Cast.WorkLogInfo - (*WorkDetailResp)(nil), // 27: Cast.WorkDetailResp - (*UpdateStatusReq)(nil), // 28: Cast.UpdateStatusReq - (*MediaAccountsReq)(nil), // 29: Cast.MediaAccountsReq - (*MediaAccountsResp)(nil), // 30: Cast.MediaAccountsResp - (*MediaWorksReq)(nil), // 31: Cast.MediaWorksReq - (*MediaWorksResp)(nil), // 32: Cast.MediaWorksResp - (*PublishReq)(nil), // 33: Cast.PublishReq - (*PublishResp)(nil), // 34: Cast.PublishResp - (*RePublishReq)(nil), // 35: Cast.RePublishReq - (*RePublishResp)(nil), // 36: Cast.RePublishResp - (*DelWorkReq)(nil), // 37: Cast.DelWorkReq - (*WorkInfoReq)(nil), // 38: Cast.WorkInfoReq - (*WorkInfoResp)(nil), // 39: Cast.WorkInfoResp - (*ArtistInfoReq)(nil), // 40: Cast.ArtistInfoReq - (*ArtistInfoResp)(nil), // 41: Cast.ArtistInfoResp - (*ImportWorkBatchReq)(nil), // 42: Cast.ImportWorkBatchReq - (*ImportWorkBatchResp)(nil), // 43: Cast.ImportWorkBatchResp - (*PlatformInfo)(nil), // 44: Cast.PlatformInfo - (*UpdateWorkPlatformInfoReq)(nil), // 45: Cast.UpdateWorkPlatformInfoReq - (*UpdateWorkPlatformInfoResp)(nil), // 46: Cast.UpdateWorkPlatformInfoResp - (*UpdateWorkPublishLogReq)(nil), // 47: Cast.UpdateWorkPublishLogReq - (*RefreshWorkListReq)(nil), // 48: Cast.RefreshWorkListReq - (*RefreshWorkListResp)(nil), // 49: Cast.RefreshWorkListResp - (*OAuthAccountReq)(nil), // 50: Cast.OAuthAccountReq - (*OAuthAccountResp)(nil), // 51: Cast.OAuthAccountResp - (*OAuthAccountV2Req)(nil), // 52: Cast.OAuthAccountV2Req - (*OAuthAccountV2Resp)(nil), // 53: Cast.OAuthAccountV2Resp - (*OAuthYoutubeTokenReq)(nil), // 54: Cast.OAuthYoutubeTokenReq - (*OAuthYoutubeTokenResp)(nil), // 55: Cast.OAuthYoutubeTokenResp - (*OAuthCodeToTokenReq)(nil), // 56: Cast.OAuthCodeToTokenReq - (*OAuthCodeToTokenResp)(nil), // 57: Cast.OAuthCodeToTokenResp - (*UpdateOAuthReq)(nil), // 58: Cast.UpdateOAuthReq - (*RefreshTokenReq)(nil), // 59: Cast.RefreshTokenReq - (*RefreshTokenResp)(nil), // 60: Cast.RefreshTokenResp - (*PublishMediaInfoReq)(nil), // 61: Cast.PublishMediaInfoReq - (*PublishMediaInfoResp)(nil), // 62: Cast.PublishMediaInfoResp - (*UpdateVideoScriptReq)(nil), // 63: Cast.UpdateVideoScriptReq - (*UpdateVideoScriptResp)(nil), // 64: Cast.UpdateVideoScriptResp - (*GetVideoScriptReq)(nil), // 65: Cast.GetVideoScriptReq - (*GetVideoScriptResp)(nil), // 66: Cast.GetVideoScriptResp - (*ListVideoScriptsReq)(nil), // 67: Cast.ListVideoScriptsReq - (*VideoScriptInfo)(nil), // 68: Cast.VideoScriptInfo - (*ListVideoScriptsResp)(nil), // 69: Cast.ListVideoScriptsResp - (*DeleteVideoScriptReq)(nil), // 70: Cast.DeleteVideoScriptReq - (*UpdateVideoScriptBatchReq)(nil), // 71: Cast.UpdateVideoScriptBatchReq - (*UpdateVideoScriptBatchResp)(nil), // 72: Cast.UpdateVideoScriptBatchResp - (*UpdateScriptStatusReq)(nil), // 73: Cast.UpdateScriptStatusReq - (*SetLayoutReq)(nil), // 74: Cast.SetLayoutReq - (*GetLayoutReq)(nil), // 75: Cast.GetLayoutReq - (*GetLayoutResp)(nil), // 76: Cast.GetLayoutResp - (*UpdatePromptReq)(nil), // 77: Cast.UpdatePromptReq - (*DeletePromptReq)(nil), // 78: Cast.DeletePromptReq - (*GetPromptReq)(nil), // 79: Cast.GetPromptReq - (*GetPromptResp)(nil), // 80: Cast.GetPromptResp - (*ListPromptsReq)(nil), // 81: Cast.ListPromptsReq - (*PromptInfo)(nil), // 82: Cast.PromptInfo - (*ListPromptsResp)(nil), // 83: Cast.ListPromptsResp - (*UpdatePromptBatchReq)(nil), // 84: Cast.UpdatePromptBatchReq - (*UpdatePromptBatchResp)(nil), // 85: Cast.UpdatePromptBatchResp - (*ArtistInfo)(nil), // 86: Cast.ArtistInfo - (*UpdateArtistReq)(nil), // 87: Cast.UpdateArtistReq - (*UpdateArtistResp)(nil), // 88: Cast.UpdateArtistResp - (*GetArtistReq)(nil), // 89: Cast.GetArtistReq - (*GetArtistResp)(nil), // 90: Cast.GetArtistResp - (*CreateWorkAnalysisReq)(nil), // 91: Cast.CreateWorkAnalysisReq - (*CreateWorkAnalysisResp)(nil), // 92: Cast.CreateWorkAnalysisResp - (*UpdateWorkAnalysisReq)(nil), // 93: Cast.UpdateWorkAnalysisReq - (*UpdateWorkAnalysisStatusReq)(nil), // 94: Cast.UpdateWorkAnalysisStatusReq - (*WorkAnalysisLogInfo)(nil), // 95: Cast.WorkAnalysisLogInfo - (*WorkAnalysisFansSeries)(nil), // 96: Cast.WorkAnalysisFansSeries - (*WorkAnalysisViewsSeries)(nil), // 97: Cast.WorkAnalysisViewsSeries - (*WorkAnalysisLikesSeries)(nil), // 98: Cast.WorkAnalysisLikesSeries - (*WorkAnalysisCommentsSeries)(nil), // 99: Cast.WorkAnalysisCommentsSeries - (*WorkAnalysisSharesSeries)(nil), // 100: Cast.WorkAnalysisSharesSeries - (*WorkAnalysisTopCities)(nil), // 101: Cast.WorkAnalysisTopCities - (*WorkAnalysisMostActiveDay)(nil), // 102: Cast.WorkAnalysisMostActiveDay - (*WorkAnalysisBestPostTime)(nil), // 103: Cast.WorkAnalysisBestPostTime - (*WorkAnalysisExtra)(nil), // 104: Cast.WorkAnalysisExtra - (*GetWorkAnalysisDetailReq)(nil), // 105: Cast.GetWorkAnalysisDetailReq - (*GetLatestWorkAnalysisReq)(nil), // 106: Cast.GetLatestWorkAnalysisReq - (*GetWorkAnalysisResp)(nil), // 107: Cast.GetWorkAnalysisResp - (*GetWorkAnalysisDetailResp)(nil), // 108: Cast.GetWorkAnalysisDetailResp - (*ListWorkAnalysisReq)(nil), // 109: Cast.ListWorkAnalysisReq - (*WorkAnalysisInfo)(nil), // 110: Cast.WorkAnalysisInfo - (*ListWorkAnalysisResp)(nil), // 111: Cast.ListWorkAnalysisResp - (*DeleteWorkAnalysisReq)(nil), // 112: Cast.DeleteWorkAnalysisReq - (*ArtistDataListReq)(nil), // 113: Cast.ArtistDataListReq - (*ArtistDataRespItem)(nil), // 114: Cast.ArtistDataRespItem - (*ArtistDataListResp)(nil), // 115: Cast.ArtistDataListResp - (*MediaDataListReq)(nil), // 116: Cast.MediaDataListReq - (*MediaDataListItem)(nil), // 117: Cast.MediaDataListItem - (*MediaDataListResp)(nil), // 118: Cast.MediaDataListResp - (*DataOverviewReq)(nil), // 119: Cast.DataOverviewReq - (*DataOverviewResp)(nil), // 120: Cast.DataOverviewResp - (*ArtistMetricsSeriesReq)(nil), // 121: Cast.ArtistMetricsSeriesReq - (*ArtistMetricsSeriesResp)(nil), // 122: Cast.ArtistMetricsSeriesResp - (*ArtistMetricsDailyWindowReq)(nil), // 123: Cast.ArtistMetricsDailyWindowReq - (*SimplePoint)(nil), // 124: Cast.SimplePoint - (*BestPostTimePoint)(nil), // 125: Cast.BestPostTimePoint - (*MostActiveDayPoint)(nil), // 126: Cast.MostActiveDayPoint - (*ArtistMetricsDailyWindowResp)(nil), // 127: Cast.ArtistMetricsDailyWindowResp - (*TobeConfirmedListReq)(nil), // 128: Cast.TobeConfirmedListReq - (*TobeConfirmedItem)(nil), // 129: Cast.TobeConfirmedItem - (*TobeConfirmedListResp)(nil), // 130: Cast.TobeConfirmedListResp - (*UpdateWorkAnalysisApprovalIDReq)(nil), // 131: Cast.UpdateWorkAnalysisApprovalIDReq - (*MediaMetricsDailyItem)(nil), // 132: Cast.MediaMetricsDailyItem - (*UpsertMediaMetricsDailyBatchReq)(nil), // 133: Cast.UpsertMediaMetricsDailyBatchReq - (*UpsertMediaMetricsDailyBatchResp)(nil), // 134: Cast.UpsertMediaMetricsDailyBatchResp - (*WorkMetricsDailyItem)(nil), // 135: Cast.WorkMetricsDailyItem - (*UpsertWorkMetricsDailyBatchReq)(nil), // 136: Cast.UpsertWorkMetricsDailyBatchReq - (*UpsertWorkMetricsDailyBatchResp)(nil), // 137: Cast.UpsertWorkMetricsDailyBatchResp - (*GetArtistAyrShareInfoReq)(nil), // 138: Cast.GetArtistAyrShareInfoReq - (*ArtistAyrShareInfo)(nil), // 139: Cast.ArtistAyrShareInfo - (*GetArtistAyrShareInfoResp)(nil), // 140: Cast.GetArtistAyrShareInfoResp - (*ListWorkPlatformInfoReq)(nil), // 141: Cast.ListWorkPlatformInfoReq - (*WorkPlatformInfo)(nil), // 142: Cast.WorkPlatformInfo - (*ListWorkPlatformInfoResp)(nil), // 143: Cast.ListWorkPlatformInfoResp - (*WorkListResp_Info)(nil), // 144: Cast.WorkListResp.Info - nil, // 145: Cast.WorkDetailResp.MediaAccDataEntry - (*MediaAccountsResp_Info)(nil), // 146: Cast.MediaAccountsResp.Info - (*MediaWorksResp_Info)(nil), // 147: Cast.MediaWorksResp.Info - (*PublishResp_Info)(nil), // 148: Cast.PublishResp.Info - (*RefreshWorkListResp_Info)(nil), // 149: Cast.RefreshWorkListResp.Info - (*RefreshWorkListResp_Info_PlatformInfo)(nil), // 150: Cast.RefreshWorkListResp.Info.PlatformInfo - (*UpdateOAuthReq_Info)(nil), // 151: Cast.UpdateOAuthReq.Info - (*emptypb.Empty)(nil), // 152: google.protobuf.Empty + (ConfirmFailENUM)(0), // 5: Cast.ConfirmFailENUM + (CategoryENUM)(0), // 6: Cast.CategoryENUM + (*AsInfo)(nil), // 7: Cast.AsInfo + (*MediaUserListReq)(nil), // 8: Cast.MediaUserListReq + (*MediaUserInfo)(nil), // 9: Cast.MediaUserInfo + (*MediaUserListResp)(nil), // 10: Cast.MediaUserListResp + (*UpdateMediaAccountReq)(nil), // 11: Cast.UpdateMediaAccountReq + (*UpdateMediaAccountResp)(nil), // 12: Cast.UpdateMediaAccountResp + (*UnbindManagerReq)(nil), // 13: Cast.UnbindManagerReq + (*UnbindManagerResp)(nil), // 14: Cast.UnbindManagerResp + (*BindManagerReq)(nil), // 15: Cast.BindManagerReq + (*UpdateWorkImageReq)(nil), // 16: Cast.UpdateWorkImageReq + (*UpdateWorkImageResp)(nil), // 17: Cast.UpdateWorkImageResp + (*PublishConfig)(nil), // 18: Cast.PublishConfig + (*UpdateWorkVideoReq)(nil), // 19: Cast.UpdateWorkVideoReq + (*UpdateWorkVideoResp)(nil), // 20: Cast.UpdateWorkVideoResp + (*MediaInfoReq)(nil), // 21: Cast.MediaInfoReq + (*MediaInfoResp)(nil), // 22: Cast.MediaInfoResp + (*MediaInfoByPlatformReq)(nil), // 23: Cast.MediaInfoByPlatformReq + (*MediaInfoByPlatformResp)(nil), // 24: Cast.MediaInfoByPlatformResp + (*WorkListReq)(nil), // 25: Cast.WorkListReq + (*WorkListResp)(nil), // 26: Cast.WorkListResp + (*WorkDetailReq)(nil), // 27: Cast.WorkDetailReq + (*WorkLogInfo)(nil), // 28: Cast.WorkLogInfo + (*WorkDetailResp)(nil), // 29: Cast.WorkDetailResp + (*UpdateStatusReq)(nil), // 30: Cast.UpdateStatusReq + (*MediaAccountsReq)(nil), // 31: Cast.MediaAccountsReq + (*MediaAccountsResp)(nil), // 32: Cast.MediaAccountsResp + (*MediaWorksReq)(nil), // 33: Cast.MediaWorksReq + (*MediaWorksResp)(nil), // 34: Cast.MediaWorksResp + (*PublishReq)(nil), // 35: Cast.PublishReq + (*PublishResp)(nil), // 36: Cast.PublishResp + (*RePublishReq)(nil), // 37: Cast.RePublishReq + (*RePublishResp)(nil), // 38: Cast.RePublishResp + (*DelWorkReq)(nil), // 39: Cast.DelWorkReq + (*WorkInfoReq)(nil), // 40: Cast.WorkInfoReq + (*WorkInfoResp)(nil), // 41: Cast.WorkInfoResp + (*ArtistInfoReq)(nil), // 42: Cast.ArtistInfoReq + (*ArtistInfoResp)(nil), // 43: Cast.ArtistInfoResp + (*ImportWorkBatchReq)(nil), // 44: Cast.ImportWorkBatchReq + (*ImportWorkBatchResp)(nil), // 45: Cast.ImportWorkBatchResp + (*PlatformInfo)(nil), // 46: Cast.PlatformInfo + (*UpdateWorkPlatformInfoReq)(nil), // 47: Cast.UpdateWorkPlatformInfoReq + (*UpdateWorkPlatformInfoResp)(nil), // 48: Cast.UpdateWorkPlatformInfoResp + (*UpdateWorkPublishLogReq)(nil), // 49: Cast.UpdateWorkPublishLogReq + (*RefreshWorkListReq)(nil), // 50: Cast.RefreshWorkListReq + (*RefreshWorkListResp)(nil), // 51: Cast.RefreshWorkListResp + (*OAuthAccountReq)(nil), // 52: Cast.OAuthAccountReq + (*OAuthAccountResp)(nil), // 53: Cast.OAuthAccountResp + (*OAuthAccountV2Req)(nil), // 54: Cast.OAuthAccountV2Req + (*OAuthAccountV2Resp)(nil), // 55: Cast.OAuthAccountV2Resp + (*OAuthYoutubeTokenReq)(nil), // 56: Cast.OAuthYoutubeTokenReq + (*OAuthYoutubeTokenResp)(nil), // 57: Cast.OAuthYoutubeTokenResp + (*OAuthCodeToTokenReq)(nil), // 58: Cast.OAuthCodeToTokenReq + (*OAuthCodeToTokenResp)(nil), // 59: Cast.OAuthCodeToTokenResp + (*UpdateOAuthReq)(nil), // 60: Cast.UpdateOAuthReq + (*RefreshTokenReq)(nil), // 61: Cast.RefreshTokenReq + (*RefreshTokenResp)(nil), // 62: Cast.RefreshTokenResp + (*PublishMediaInfoReq)(nil), // 63: Cast.PublishMediaInfoReq + (*PublishMediaInfoResp)(nil), // 64: Cast.PublishMediaInfoResp + (*ToolsReq)(nil), // 65: Cast.ToolsReq + (*UpdateVideoScriptReq)(nil), // 66: Cast.UpdateVideoScriptReq + (*UpdateVideoScriptResp)(nil), // 67: Cast.UpdateVideoScriptResp + (*GetVideoScriptReq)(nil), // 68: Cast.GetVideoScriptReq + (*GetVideoScriptResp)(nil), // 69: Cast.GetVideoScriptResp + (*ListVideoScriptsReq)(nil), // 70: Cast.ListVideoScriptsReq + (*VideoScriptInfo)(nil), // 71: Cast.VideoScriptInfo + (*ListVideoScriptsResp)(nil), // 72: Cast.ListVideoScriptsResp + (*DeleteVideoScriptReq)(nil), // 73: Cast.DeleteVideoScriptReq + (*UpdateVideoScriptBatchReq)(nil), // 74: Cast.UpdateVideoScriptBatchReq + (*UpdateVideoScriptBatchResp)(nil), // 75: Cast.UpdateVideoScriptBatchResp + (*UpdateScriptStatusReq)(nil), // 76: Cast.UpdateScriptStatusReq + (*SetLayoutReq)(nil), // 77: Cast.SetLayoutReq + (*GetLayoutReq)(nil), // 78: Cast.GetLayoutReq + (*GetLayoutResp)(nil), // 79: Cast.GetLayoutResp + (*UpdatePromptReq)(nil), // 80: Cast.UpdatePromptReq + (*DeletePromptReq)(nil), // 81: Cast.DeletePromptReq + (*GetPromptReq)(nil), // 82: Cast.GetPromptReq + (*GetPromptResp)(nil), // 83: Cast.GetPromptResp + (*ListPromptsReq)(nil), // 84: Cast.ListPromptsReq + (*PromptInfo)(nil), // 85: Cast.PromptInfo + (*ListPromptsResp)(nil), // 86: Cast.ListPromptsResp + (*UpdatePromptBatchReq)(nil), // 87: Cast.UpdatePromptBatchReq + (*UpdatePromptBatchResp)(nil), // 88: Cast.UpdatePromptBatchResp + (*ArtistInfo)(nil), // 89: Cast.ArtistInfo + (*UpdateArtistReq)(nil), // 90: Cast.UpdateArtistReq + (*UpdateArtistResp)(nil), // 91: Cast.UpdateArtistResp + (*GetArtistReq)(nil), // 92: Cast.GetArtistReq + (*GetArtistResp)(nil), // 93: Cast.GetArtistResp + (*CreateWorkAnalysisReq)(nil), // 94: Cast.CreateWorkAnalysisReq + (*CreateWorkAnalysisResp)(nil), // 95: Cast.CreateWorkAnalysisResp + (*UpdateWorkAnalysisReq)(nil), // 96: Cast.UpdateWorkAnalysisReq + (*UpdateWorkAnalysisStatusReq)(nil), // 97: Cast.UpdateWorkAnalysisStatusReq + (*WorkAnalysisLogInfo)(nil), // 98: Cast.WorkAnalysisLogInfo + (*WorkAnalysisFansSeries)(nil), // 99: Cast.WorkAnalysisFansSeries + (*WorkAnalysisViewsSeries)(nil), // 100: Cast.WorkAnalysisViewsSeries + (*WorkAnalysisLikesSeries)(nil), // 101: Cast.WorkAnalysisLikesSeries + (*WorkAnalysisCommentsSeries)(nil), // 102: Cast.WorkAnalysisCommentsSeries + (*WorkAnalysisSharesSeries)(nil), // 103: Cast.WorkAnalysisSharesSeries + (*WorkAnalysisTopCities)(nil), // 104: Cast.WorkAnalysisTopCities + (*WorkAnalysisMostActiveDay)(nil), // 105: Cast.WorkAnalysisMostActiveDay + (*WorkAnalysisBestPostTime)(nil), // 106: Cast.WorkAnalysisBestPostTime + (*WorkAnalysisExtra)(nil), // 107: Cast.WorkAnalysisExtra + (*GetWorkAnalysisDetailReq)(nil), // 108: Cast.GetWorkAnalysisDetailReq + (*GetLatestWorkAnalysisReq)(nil), // 109: Cast.GetLatestWorkAnalysisReq + (*GetWorkAnalysisResp)(nil), // 110: Cast.GetWorkAnalysisResp + (*GetWorkAnalysisDetailResp)(nil), // 111: Cast.GetWorkAnalysisDetailResp + (*ListWorkAnalysisReq)(nil), // 112: Cast.ListWorkAnalysisReq + (*WorkAnalysisInfo)(nil), // 113: Cast.WorkAnalysisInfo + (*ListWorkAnalysisResp)(nil), // 114: Cast.ListWorkAnalysisResp + (*DeleteWorkAnalysisReq)(nil), // 115: Cast.DeleteWorkAnalysisReq + (*ArtistDataListReq)(nil), // 116: Cast.ArtistDataListReq + (*ArtistDataRespItem)(nil), // 117: Cast.ArtistDataRespItem + (*ArtistDataListResp)(nil), // 118: Cast.ArtistDataListResp + (*MediaDataListReq)(nil), // 119: Cast.MediaDataListReq + (*MediaDataListItem)(nil), // 120: Cast.MediaDataListItem + (*MediaDataListResp)(nil), // 121: Cast.MediaDataListResp + (*DataOverviewReq)(nil), // 122: Cast.DataOverviewReq + (*DataOverviewResp)(nil), // 123: Cast.DataOverviewResp + (*ArtistMetricsSeriesReq)(nil), // 124: Cast.ArtistMetricsSeriesReq + (*ArtistMetricsSeriesResp)(nil), // 125: Cast.ArtistMetricsSeriesResp + (*ArtistMetricsDailyWindowReq)(nil), // 126: Cast.ArtistMetricsDailyWindowReq + (*SimplePoint)(nil), // 127: Cast.SimplePoint + (*BestPostTimePoint)(nil), // 128: Cast.BestPostTimePoint + (*MostActiveDayPoint)(nil), // 129: Cast.MostActiveDayPoint + (*ArtistMetricsDailyWindowResp)(nil), // 130: Cast.ArtistMetricsDailyWindowResp + (*TobeConfirmedListReq)(nil), // 131: Cast.TobeConfirmedListReq + (*TobeConfirmedItem)(nil), // 132: Cast.TobeConfirmedItem + (*TobeConfirmedListResp)(nil), // 133: Cast.TobeConfirmedListResp + (*UpdateWorkAnalysisApprovalIDReq)(nil), // 134: Cast.UpdateWorkAnalysisApprovalIDReq + (*MediaMetricsDailyItem)(nil), // 135: Cast.MediaMetricsDailyItem + (*UpsertMediaMetricsDailyBatchReq)(nil), // 136: Cast.UpsertMediaMetricsDailyBatchReq + (*UpsertMediaMetricsDailyBatchResp)(nil), // 137: Cast.UpsertMediaMetricsDailyBatchResp + (*WorkMetricsDailyItem)(nil), // 138: Cast.WorkMetricsDailyItem + (*UpsertWorkMetricsDailyBatchReq)(nil), // 139: Cast.UpsertWorkMetricsDailyBatchReq + (*UpsertWorkMetricsDailyBatchResp)(nil), // 140: Cast.UpsertWorkMetricsDailyBatchResp + (*GetArtistAyrShareInfoReq)(nil), // 141: Cast.GetArtistAyrShareInfoReq + (*ArtistAyrShareInfo)(nil), // 142: Cast.ArtistAyrShareInfo + (*GetArtistAyrShareInfoResp)(nil), // 143: Cast.GetArtistAyrShareInfoResp + (*ListWorkPlatformInfoReq)(nil), // 144: Cast.ListWorkPlatformInfoReq + (*WorkPlatformInfo)(nil), // 145: Cast.WorkPlatformInfo + (*ListWorkPlatformInfoResp)(nil), // 146: Cast.ListWorkPlatformInfoResp + (*ListMediaMetricsDailyReq)(nil), // 147: Cast.ListMediaMetricsDailyReq + (*MediaMetricsDailyInfo)(nil), // 148: Cast.MediaMetricsDailyInfo + (*ListMediaMetricsDailyResp)(nil), // 149: Cast.ListMediaMetricsDailyResp + (*ListWorkMetricsDailyReq)(nil), // 150: Cast.ListWorkMetricsDailyReq + (*WorkMetricsDailyInfo)(nil), // 151: Cast.WorkMetricsDailyInfo + (*ListWorkMetricsDailyResp)(nil), // 152: Cast.ListWorkMetricsDailyResp + (*UpsertTaskListReq)(nil), // 153: Cast.UpsertTaskListReq + (*UpsertTaskListResp)(nil), // 154: Cast.UpsertTaskListResp + (*GetTaskListReq)(nil), // 155: Cast.GetTaskListReq + (*TaskListInfo)(nil), // 156: Cast.TaskListInfo + (*GetTaskListResp)(nil), // 157: Cast.GetTaskListResp + (*ListTaskListReq)(nil), // 158: Cast.ListTaskListReq + (*ListTaskListResp)(nil), // 159: Cast.ListTaskListResp + (*DeleteTaskListReq)(nil), // 160: Cast.DeleteTaskListReq + (*WorkListResp_Info)(nil), // 161: Cast.WorkListResp.Info + nil, // 162: Cast.WorkListResp.Info.PublishMediaIDsEntry + nil, // 163: Cast.WorkDetailResp.MediaAccDataEntry + (*MediaAccountsResp_Info)(nil), // 164: Cast.MediaAccountsResp.Info + (*MediaWorksResp_Info)(nil), // 165: Cast.MediaWorksResp.Info + (*PublishResp_Info)(nil), // 166: Cast.PublishResp.Info + (*RefreshWorkListResp_Info)(nil), // 167: Cast.RefreshWorkListResp.Info + (*RefreshWorkListResp_Info_PlatformInfo)(nil), // 168: Cast.RefreshWorkListResp.Info.PlatformInfo + (*UpdateOAuthReq_Info)(nil), // 169: Cast.UpdateOAuthReq.Info + (*emptypb.Empty)(nil), // 170: google.protobuf.Empty } var file_pb_fiee_cast_proto_depIdxs = []int32{ 0, // 0: Cast.MediaUserListReq.platformID:type_name -> Cast.PlatformIDENUM 1, // 1: Cast.MediaUserListReq.authStatus:type_name -> Cast.AuthStatusENUM 1, // 2: Cast.MediaUserInfo.authStatus:type_name -> Cast.AuthStatusENUM - 7, // 3: Cast.MediaUserListResp.data:type_name -> Cast.MediaUserInfo - 0, // 4: Cast.UpdateMediaAccountReq.platformID:type_name -> Cast.PlatformIDENUM - 0, // 5: Cast.UpdateWorkImageReq.platformIDs:type_name -> Cast.PlatformIDENUM - 16, // 6: Cast.UpdateWorkImageReq.publishConfig1:type_name -> Cast.PublishConfig - 16, // 7: Cast.UpdateWorkImageReq.publishConfig2:type_name -> Cast.PublishConfig - 16, // 8: Cast.UpdateWorkImageReq.publishConfig3:type_name -> Cast.PublishConfig - 16, // 9: Cast.UpdateWorkImageReq.publishConfig4:type_name -> Cast.PublishConfig - 16, // 10: Cast.UpdateWorkImageReq.publishConfig5:type_name -> Cast.PublishConfig - 0, // 11: Cast.UpdateWorkVideoReq.platformIDs:type_name -> Cast.PlatformIDENUM - 16, // 12: Cast.UpdateWorkVideoReq.publishConfig1:type_name -> Cast.PublishConfig - 16, // 13: Cast.UpdateWorkVideoReq.publishConfig2:type_name -> Cast.PublishConfig - 16, // 14: Cast.UpdateWorkVideoReq.publishConfig3:type_name -> Cast.PublishConfig - 16, // 15: Cast.UpdateWorkVideoReq.publishConfig4:type_name -> Cast.PublishConfig - 3, // 16: Cast.UpdateWorkVideoReq.autoPublish:type_name -> Cast.AutoPublishENUM - 16, // 17: Cast.UpdateWorkVideoReq.publishConfig5:type_name -> Cast.PublishConfig - 0, // 18: Cast.MediaInfoReq.platformID:type_name -> Cast.PlatformIDENUM - 7, // 19: Cast.MediaInfoResp.info:type_name -> Cast.MediaUserInfo - 0, // 20: Cast.MediaInfoByPlatformReq.platformID:type_name -> Cast.PlatformIDENUM - 7, // 21: Cast.MediaInfoByPlatformResp.info:type_name -> Cast.MediaUserInfo - 144, // 22: Cast.WorkListResp.data:type_name -> Cast.WorkListResp.Info - 16, // 23: Cast.WorkDetailResp.publishConfig1:type_name -> Cast.PublishConfig - 16, // 24: Cast.WorkDetailResp.publishConfig2:type_name -> Cast.PublishConfig - 16, // 25: Cast.WorkDetailResp.publishConfig3:type_name -> Cast.PublishConfig - 16, // 26: Cast.WorkDetailResp.publishConfig4:type_name -> Cast.PublishConfig - 26, // 27: Cast.WorkDetailResp.WorkLogData:type_name -> Cast.WorkLogInfo - 145, // 28: Cast.WorkDetailResp.mediaAccData:type_name -> Cast.WorkDetailResp.MediaAccDataEntry - 16, // 29: Cast.WorkDetailResp.publishConfig5:type_name -> Cast.PublishConfig - 2, // 30: Cast.UpdateStatusReq.workAction:type_name -> Cast.WorkActionENUM - 3, // 31: Cast.UpdateStatusReq.autoPublish:type_name -> Cast.AutoPublishENUM - 146, // 32: Cast.MediaAccountsResp.data:type_name -> Cast.MediaAccountsResp.Info - 147, // 33: Cast.MediaWorksResp.data:type_name -> Cast.MediaWorksResp.Info - 148, // 34: Cast.PublishResp.data:type_name -> Cast.PublishResp.Info - 14, // 35: Cast.ImportWorkBatchReq.imageWorks:type_name -> Cast.UpdateWorkImageReq - 14, // 36: Cast.ImportWorkBatchResp.imageWorks:type_name -> Cast.UpdateWorkImageReq - 4, // 37: Cast.PlatformInfo.publishStatus:type_name -> Cast.PublishStatusENUM - 44, // 38: Cast.UpdateWorkPlatformInfoReq.PlatformInfoData:type_name -> Cast.PlatformInfo - 0, // 39: Cast.UpdateWorkPublishLogReq.platformID:type_name -> Cast.PlatformIDENUM - 149, // 40: Cast.RefreshWorkListResp.Data:type_name -> Cast.RefreshWorkListResp.Info - 0, // 41: Cast.OAuthCodeToTokenReq.platformID:type_name -> Cast.PlatformIDENUM - 151, // 42: Cast.UpdateOAuthReq.Data:type_name -> Cast.UpdateOAuthReq.Info - 0, // 43: Cast.RefreshTokenReq.platformID:type_name -> Cast.PlatformIDENUM - 68, // 44: Cast.ListVideoScriptsResp.data:type_name -> Cast.VideoScriptInfo - 68, // 45: Cast.UpdateVideoScriptBatchReq.data:type_name -> Cast.VideoScriptInfo - 68, // 46: Cast.UpdateVideoScriptBatchResp.data:type_name -> Cast.VideoScriptInfo - 2, // 47: Cast.UpdateScriptStatusReq.workAction:type_name -> Cast.WorkActionENUM - 5, // 48: Cast.UpdatePromptReq.category:type_name -> Cast.CategoryENUM - 5, // 49: Cast.GetPromptResp.category:type_name -> Cast.CategoryENUM - 5, // 50: Cast.ListPromptsReq.category:type_name -> Cast.CategoryENUM - 5, // 51: Cast.PromptInfo.category:type_name -> Cast.CategoryENUM - 82, // 52: Cast.ListPromptsResp.data:type_name -> Cast.PromptInfo - 82, // 53: Cast.UpdatePromptBatchReq.data:type_name -> Cast.PromptInfo - 82, // 54: Cast.UpdatePromptBatchResp.data:type_name -> Cast.PromptInfo - 86, // 55: Cast.UpdateArtistReq.artistInfo:type_name -> Cast.ArtistInfo - 86, // 56: Cast.GetArtistResp.artistInfo:type_name -> Cast.ArtistInfo - 2, // 57: Cast.UpdateWorkAnalysisStatusReq.workAction:type_name -> Cast.WorkActionENUM - 96, // 58: Cast.GetWorkAnalysisResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries - 97, // 59: Cast.GetWorkAnalysisResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries - 98, // 60: Cast.GetWorkAnalysisResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries - 99, // 61: Cast.GetWorkAnalysisResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries - 100, // 62: Cast.GetWorkAnalysisResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries - 101, // 63: Cast.GetWorkAnalysisResp.topCitiesSeries:type_name -> Cast.WorkAnalysisTopCities - 102, // 64: Cast.GetWorkAnalysisResp.mostActiveDaySeries:type_name -> Cast.WorkAnalysisMostActiveDay - 103, // 65: Cast.GetWorkAnalysisResp.bestPostTimeSeries:type_name -> Cast.WorkAnalysisBestPostTime - 95, // 66: Cast.GetWorkAnalysisDetailResp.WorkAnalysisLogData:type_name -> Cast.WorkAnalysisLogInfo - 96, // 67: Cast.GetWorkAnalysisDetailResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries - 97, // 68: Cast.GetWorkAnalysisDetailResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries - 98, // 69: Cast.GetWorkAnalysisDetailResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries - 99, // 70: Cast.GetWorkAnalysisDetailResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries - 100, // 71: Cast.GetWorkAnalysisDetailResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries - 101, // 72: Cast.GetWorkAnalysisDetailResp.topCitiesSeries:type_name -> Cast.WorkAnalysisTopCities - 102, // 73: Cast.GetWorkAnalysisDetailResp.mostActiveDaySeries:type_name -> Cast.WorkAnalysisMostActiveDay - 103, // 74: Cast.GetWorkAnalysisDetailResp.bestPostTimeSeries:type_name -> Cast.WorkAnalysisBestPostTime - 104, // 75: Cast.GetWorkAnalysisDetailResp.extra:type_name -> Cast.WorkAnalysisExtra - 110, // 76: Cast.ListWorkAnalysisResp.data:type_name -> Cast.WorkAnalysisInfo - 114, // 77: Cast.ArtistDataListResp.data:type_name -> Cast.ArtistDataRespItem - 117, // 78: Cast.MediaDataListResp.data:type_name -> Cast.MediaDataListItem - 96, // 79: Cast.ArtistMetricsSeriesResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries - 97, // 80: Cast.ArtistMetricsSeriesResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries - 98, // 81: Cast.ArtistMetricsSeriesResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries - 99, // 82: Cast.ArtistMetricsSeriesResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries - 100, // 83: Cast.ArtistMetricsSeriesResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries - 103, // 84: Cast.ArtistMetricsSeriesResp.bestPostTime:type_name -> Cast.WorkAnalysisBestPostTime - 102, // 85: Cast.ArtistMetricsSeriesResp.mostActiveDay:type_name -> Cast.WorkAnalysisMostActiveDay - 124, // 86: Cast.ArtistMetricsDailyWindowResp.fans:type_name -> Cast.SimplePoint - 124, // 87: Cast.ArtistMetricsDailyWindowResp.views:type_name -> Cast.SimplePoint - 124, // 88: Cast.ArtistMetricsDailyWindowResp.likes:type_name -> Cast.SimplePoint - 124, // 89: Cast.ArtistMetricsDailyWindowResp.comments:type_name -> Cast.SimplePoint - 124, // 90: Cast.ArtistMetricsDailyWindowResp.shares:type_name -> Cast.SimplePoint - 125, // 91: Cast.ArtistMetricsDailyWindowResp.bestPostTime:type_name -> Cast.BestPostTimePoint - 126, // 92: Cast.ArtistMetricsDailyWindowResp.mostActiveDay:type_name -> Cast.MostActiveDayPoint - 129, // 93: Cast.TobeConfirmedListResp.data:type_name -> Cast.TobeConfirmedItem - 132, // 94: Cast.UpsertMediaMetricsDailyBatchReq.data:type_name -> Cast.MediaMetricsDailyItem - 135, // 95: Cast.UpsertWorkMetricsDailyBatchReq.data:type_name -> Cast.WorkMetricsDailyItem - 139, // 96: Cast.GetArtistAyrShareInfoResp.data:type_name -> Cast.ArtistAyrShareInfo - 142, // 97: Cast.ListWorkPlatformInfoResp.data:type_name -> Cast.WorkPlatformInfo - 7, // 98: Cast.WorkDetailResp.MediaAccDataEntry.value:type_name -> Cast.MediaUserInfo - 150, // 99: Cast.RefreshWorkListResp.Info.PlatformInfoData:type_name -> Cast.RefreshWorkListResp.Info.PlatformInfo - 0, // 100: Cast.RefreshWorkListResp.Info.PlatformInfo.platformID:type_name -> Cast.PlatformIDENUM - 0, // 101: Cast.UpdateOAuthReq.Info.platformID:type_name -> Cast.PlatformIDENUM - 6, // 102: Cast.Cast.MediaUserList:input_type -> Cast.MediaUserListReq - 9, // 103: Cast.Cast.UpdateMediaAccount:input_type -> Cast.UpdateMediaAccountReq - 11, // 104: Cast.Cast.UnbindManager:input_type -> Cast.UnbindManagerReq - 13, // 105: Cast.Cast.BindManager:input_type -> Cast.BindManagerReq - 14, // 106: Cast.Cast.UpdateWorkImage:input_type -> Cast.UpdateWorkImageReq - 17, // 107: Cast.Cast.UpdateWorkVideo:input_type -> Cast.UpdateWorkVideoReq - 19, // 108: Cast.Cast.MediaInfo:input_type -> Cast.MediaInfoReq - 21, // 109: Cast.Cast.MediaInfoByPlatform:input_type -> Cast.MediaInfoByPlatformReq - 23, // 110: Cast.Cast.WorkList:input_type -> Cast.WorkListReq - 25, // 111: Cast.Cast.WorkDetail:input_type -> Cast.WorkDetailReq - 28, // 112: Cast.Cast.UpdateStatus:input_type -> Cast.UpdateStatusReq - 29, // 113: Cast.Cast.MediaAccounts:input_type -> Cast.MediaAccountsReq - 31, // 114: Cast.Cast.MediaWorks:input_type -> Cast.MediaWorksReq - 33, // 115: Cast.Cast.Publish:input_type -> Cast.PublishReq - 35, // 116: Cast.Cast.RePublish:input_type -> Cast.RePublishReq - 37, // 117: Cast.Cast.DelWork:input_type -> Cast.DelWorkReq - 38, // 118: Cast.Cast.WorkInfo:input_type -> Cast.WorkInfoReq - 40, // 119: Cast.Cast.ArtistInfo:input_type -> Cast.ArtistInfoReq - 42, // 120: Cast.Cast.ImportWorkBatch:input_type -> Cast.ImportWorkBatchReq - 45, // 121: Cast.Cast.UpdateWorkPlatformInfo:input_type -> Cast.UpdateWorkPlatformInfoReq - 47, // 122: Cast.Cast.UpdateWorkPublishLog:input_type -> Cast.UpdateWorkPublishLogReq - 48, // 123: Cast.Cast.RefreshWorkList:input_type -> Cast.RefreshWorkListReq - 50, // 124: Cast.Cast.OAuthAccount:input_type -> Cast.OAuthAccountReq - 52, // 125: Cast.Cast.OAuthAccountV2:input_type -> Cast.OAuthAccountV2Req - 56, // 126: Cast.Cast.OAuthCodeToToken:input_type -> Cast.OAuthCodeToTokenReq - 58, // 127: Cast.Cast.UpdateOAuth:input_type -> Cast.UpdateOAuthReq - 59, // 128: Cast.Cast.RefreshToken:input_type -> Cast.RefreshTokenReq - 61, // 129: Cast.Cast.PublishMediaInfo:input_type -> Cast.PublishMediaInfoReq - 152, // 130: Cast.Cast.Test:input_type -> google.protobuf.Empty - 63, // 131: Cast.Cast.UpdateVideoScript:input_type -> Cast.UpdateVideoScriptReq - 65, // 132: Cast.Cast.GetVideoScript:input_type -> Cast.GetVideoScriptReq - 67, // 133: Cast.Cast.ListVideoScripts:input_type -> Cast.ListVideoScriptsReq - 70, // 134: Cast.Cast.DeleteVideoScript:input_type -> Cast.DeleteVideoScriptReq - 71, // 135: Cast.Cast.UpdateVideoScriptBatch:input_type -> Cast.UpdateVideoScriptBatchReq - 73, // 136: Cast.Cast.UpdateScriptStatus:input_type -> Cast.UpdateScriptStatusReq - 75, // 137: Cast.Cast.GetLayout:input_type -> Cast.GetLayoutReq - 74, // 138: Cast.Cast.SetLayout:input_type -> Cast.SetLayoutReq - 77, // 139: Cast.Cast.UpdatePrompt:input_type -> Cast.UpdatePromptReq - 78, // 140: Cast.Cast.DeletePrompt:input_type -> Cast.DeletePromptReq - 79, // 141: Cast.Cast.GetPrompt:input_type -> Cast.GetPromptReq - 81, // 142: Cast.Cast.ListPrompts:input_type -> Cast.ListPromptsReq - 84, // 143: Cast.Cast.UpdatePromptBatch:input_type -> Cast.UpdatePromptBatchReq - 87, // 144: Cast.Cast.UpdateArtist:input_type -> Cast.UpdateArtistReq - 89, // 145: Cast.Cast.GetArtist:input_type -> Cast.GetArtistReq - 91, // 146: Cast.Cast.CreateWorkAnalysis:input_type -> Cast.CreateWorkAnalysisReq - 93, // 147: Cast.Cast.UpdateWorkAnalysis:input_type -> Cast.UpdateWorkAnalysisReq - 94, // 148: Cast.Cast.UpdateWorkAnalysisStatus:input_type -> Cast.UpdateWorkAnalysisStatusReq - 105, // 149: Cast.Cast.GetWorkAnalysis:input_type -> Cast.GetWorkAnalysisDetailReq - 106, // 150: Cast.Cast.GetLatestWorkAnalysis:input_type -> Cast.GetLatestWorkAnalysisReq - 109, // 151: Cast.Cast.ListWorkAnalysis:input_type -> Cast.ListWorkAnalysisReq - 112, // 152: Cast.Cast.DeleteWorkAnalysis:input_type -> Cast.DeleteWorkAnalysisReq - 131, // 153: Cast.Cast.UpdateWorkAnalysisApprovalID:input_type -> Cast.UpdateWorkAnalysisApprovalIDReq - 113, // 154: Cast.Cast.ArtistDataList:input_type -> Cast.ArtistDataListReq - 116, // 155: Cast.Cast.MediaDataList:input_type -> Cast.MediaDataListReq - 119, // 156: Cast.Cast.DataOverview:input_type -> Cast.DataOverviewReq - 121, // 157: Cast.Cast.ArtistMetricsSeries:input_type -> Cast.ArtistMetricsSeriesReq - 123, // 158: Cast.Cast.ArtistMetricsDailyWindow:input_type -> Cast.ArtistMetricsDailyWindowReq - 128, // 159: Cast.Cast.TobeConfirmedList:input_type -> Cast.TobeConfirmedListReq - 133, // 160: Cast.Cast.UpsertMediaMetricsDailyBatch:input_type -> Cast.UpsertMediaMetricsDailyBatchReq - 136, // 161: Cast.Cast.UpsertWorkMetricsDailyBatch:input_type -> Cast.UpsertWorkMetricsDailyBatchReq - 138, // 162: Cast.Cast.GetArtistAyrShareInfo:input_type -> Cast.GetArtistAyrShareInfoReq - 141, // 163: Cast.Cast.ListWorkPlatformInfo:input_type -> Cast.ListWorkPlatformInfoReq - 8, // 164: Cast.Cast.MediaUserList:output_type -> Cast.MediaUserListResp - 10, // 165: Cast.Cast.UpdateMediaAccount:output_type -> Cast.UpdateMediaAccountResp - 12, // 166: Cast.Cast.UnbindManager:output_type -> Cast.UnbindManagerResp - 152, // 167: Cast.Cast.BindManager:output_type -> google.protobuf.Empty - 15, // 168: Cast.Cast.UpdateWorkImage:output_type -> Cast.UpdateWorkImageResp - 18, // 169: Cast.Cast.UpdateWorkVideo:output_type -> Cast.UpdateWorkVideoResp - 20, // 170: Cast.Cast.MediaInfo:output_type -> Cast.MediaInfoResp - 22, // 171: Cast.Cast.MediaInfoByPlatform:output_type -> Cast.MediaInfoByPlatformResp - 24, // 172: Cast.Cast.WorkList:output_type -> Cast.WorkListResp - 27, // 173: Cast.Cast.WorkDetail:output_type -> Cast.WorkDetailResp - 152, // 174: Cast.Cast.UpdateStatus:output_type -> google.protobuf.Empty - 30, // 175: Cast.Cast.MediaAccounts:output_type -> Cast.MediaAccountsResp - 32, // 176: Cast.Cast.MediaWorks:output_type -> Cast.MediaWorksResp - 34, // 177: Cast.Cast.Publish:output_type -> Cast.PublishResp - 36, // 178: Cast.Cast.RePublish:output_type -> Cast.RePublishResp - 152, // 179: Cast.Cast.DelWork:output_type -> google.protobuf.Empty - 39, // 180: Cast.Cast.WorkInfo:output_type -> Cast.WorkInfoResp - 41, // 181: Cast.Cast.ArtistInfo:output_type -> Cast.ArtistInfoResp - 43, // 182: Cast.Cast.ImportWorkBatch:output_type -> Cast.ImportWorkBatchResp - 46, // 183: Cast.Cast.UpdateWorkPlatformInfo:output_type -> Cast.UpdateWorkPlatformInfoResp - 152, // 184: Cast.Cast.UpdateWorkPublishLog:output_type -> google.protobuf.Empty - 49, // 185: Cast.Cast.RefreshWorkList:output_type -> Cast.RefreshWorkListResp - 51, // 186: Cast.Cast.OAuthAccount:output_type -> Cast.OAuthAccountResp - 53, // 187: Cast.Cast.OAuthAccountV2:output_type -> Cast.OAuthAccountV2Resp - 57, // 188: Cast.Cast.OAuthCodeToToken:output_type -> Cast.OAuthCodeToTokenResp - 152, // 189: Cast.Cast.UpdateOAuth:output_type -> google.protobuf.Empty - 60, // 190: Cast.Cast.RefreshToken:output_type -> Cast.RefreshTokenResp - 62, // 191: Cast.Cast.PublishMediaInfo:output_type -> Cast.PublishMediaInfoResp - 152, // 192: Cast.Cast.Test:output_type -> google.protobuf.Empty - 64, // 193: Cast.Cast.UpdateVideoScript:output_type -> Cast.UpdateVideoScriptResp - 66, // 194: Cast.Cast.GetVideoScript:output_type -> Cast.GetVideoScriptResp - 69, // 195: Cast.Cast.ListVideoScripts:output_type -> Cast.ListVideoScriptsResp - 152, // 196: Cast.Cast.DeleteVideoScript:output_type -> google.protobuf.Empty - 72, // 197: Cast.Cast.UpdateVideoScriptBatch:output_type -> Cast.UpdateVideoScriptBatchResp - 152, // 198: Cast.Cast.UpdateScriptStatus:output_type -> google.protobuf.Empty - 76, // 199: Cast.Cast.GetLayout:output_type -> Cast.GetLayoutResp - 152, // 200: Cast.Cast.SetLayout:output_type -> google.protobuf.Empty - 152, // 201: Cast.Cast.UpdatePrompt:output_type -> google.protobuf.Empty - 152, // 202: Cast.Cast.DeletePrompt:output_type -> google.protobuf.Empty - 80, // 203: Cast.Cast.GetPrompt:output_type -> Cast.GetPromptResp - 83, // 204: Cast.Cast.ListPrompts:output_type -> Cast.ListPromptsResp - 85, // 205: Cast.Cast.UpdatePromptBatch:output_type -> Cast.UpdatePromptBatchResp - 88, // 206: Cast.Cast.UpdateArtist:output_type -> Cast.UpdateArtistResp - 90, // 207: Cast.Cast.GetArtist:output_type -> Cast.GetArtistResp - 92, // 208: Cast.Cast.CreateWorkAnalysis:output_type -> Cast.CreateWorkAnalysisResp - 152, // 209: Cast.Cast.UpdateWorkAnalysis:output_type -> google.protobuf.Empty - 152, // 210: Cast.Cast.UpdateWorkAnalysisStatus:output_type -> google.protobuf.Empty - 108, // 211: Cast.Cast.GetWorkAnalysis:output_type -> Cast.GetWorkAnalysisDetailResp - 107, // 212: Cast.Cast.GetLatestWorkAnalysis:output_type -> Cast.GetWorkAnalysisResp - 111, // 213: Cast.Cast.ListWorkAnalysis:output_type -> Cast.ListWorkAnalysisResp - 152, // 214: Cast.Cast.DeleteWorkAnalysis:output_type -> google.protobuf.Empty - 152, // 215: Cast.Cast.UpdateWorkAnalysisApprovalID:output_type -> google.protobuf.Empty - 115, // 216: Cast.Cast.ArtistDataList:output_type -> Cast.ArtistDataListResp - 118, // 217: Cast.Cast.MediaDataList:output_type -> Cast.MediaDataListResp - 120, // 218: Cast.Cast.DataOverview:output_type -> Cast.DataOverviewResp - 122, // 219: Cast.Cast.ArtistMetricsSeries:output_type -> Cast.ArtistMetricsSeriesResp - 127, // 220: Cast.Cast.ArtistMetricsDailyWindow:output_type -> Cast.ArtistMetricsDailyWindowResp - 130, // 221: Cast.Cast.TobeConfirmedList:output_type -> Cast.TobeConfirmedListResp - 134, // 222: Cast.Cast.UpsertMediaMetricsDailyBatch:output_type -> Cast.UpsertMediaMetricsDailyBatchResp - 137, // 223: Cast.Cast.UpsertWorkMetricsDailyBatch:output_type -> Cast.UpsertWorkMetricsDailyBatchResp - 140, // 224: Cast.Cast.GetArtistAyrShareInfo:output_type -> Cast.GetArtistAyrShareInfoResp - 143, // 225: Cast.Cast.ListWorkPlatformInfo:output_type -> Cast.ListWorkPlatformInfoResp - 164, // [164:226] is the sub-list for method output_type - 102, // [102:164] is the sub-list for method input_type - 102, // [102:102] is the sub-list for extension type_name - 102, // [102:102] is the sub-list for extension extendee - 0, // [0:102] is the sub-list for field type_name + 7, // 3: Cast.MediaUserInfo.asInfo:type_name -> Cast.AsInfo + 9, // 4: Cast.MediaUserListResp.data:type_name -> Cast.MediaUserInfo + 0, // 5: Cast.UpdateMediaAccountReq.platformID:type_name -> Cast.PlatformIDENUM + 0, // 6: Cast.UpdateWorkImageReq.platformIDs:type_name -> Cast.PlatformIDENUM + 18, // 7: Cast.UpdateWorkImageReq.publishConfig1:type_name -> Cast.PublishConfig + 18, // 8: Cast.UpdateWorkImageReq.publishConfig2:type_name -> Cast.PublishConfig + 18, // 9: Cast.UpdateWorkImageReq.publishConfig3:type_name -> Cast.PublishConfig + 18, // 10: Cast.UpdateWorkImageReq.publishConfig4:type_name -> Cast.PublishConfig + 18, // 11: Cast.UpdateWorkImageReq.publishConfig5:type_name -> Cast.PublishConfig + 0, // 12: Cast.UpdateWorkVideoReq.platformIDs:type_name -> Cast.PlatformIDENUM + 18, // 13: Cast.UpdateWorkVideoReq.publishConfig1:type_name -> Cast.PublishConfig + 18, // 14: Cast.UpdateWorkVideoReq.publishConfig2:type_name -> Cast.PublishConfig + 18, // 15: Cast.UpdateWorkVideoReq.publishConfig3:type_name -> Cast.PublishConfig + 18, // 16: Cast.UpdateWorkVideoReq.publishConfig4:type_name -> Cast.PublishConfig + 3, // 17: Cast.UpdateWorkVideoReq.autoPublish:type_name -> Cast.AutoPublishENUM + 18, // 18: Cast.UpdateWorkVideoReq.publishConfig5:type_name -> Cast.PublishConfig + 0, // 19: Cast.MediaInfoReq.platformID:type_name -> Cast.PlatformIDENUM + 9, // 20: Cast.MediaInfoResp.info:type_name -> Cast.MediaUserInfo + 0, // 21: Cast.MediaInfoByPlatformReq.platformID:type_name -> Cast.PlatformIDENUM + 9, // 22: Cast.MediaInfoByPlatformResp.info:type_name -> Cast.MediaUserInfo + 161, // 23: Cast.WorkListResp.data:type_name -> Cast.WorkListResp.Info + 18, // 24: Cast.WorkDetailResp.publishConfig1:type_name -> Cast.PublishConfig + 18, // 25: Cast.WorkDetailResp.publishConfig2:type_name -> Cast.PublishConfig + 18, // 26: Cast.WorkDetailResp.publishConfig3:type_name -> Cast.PublishConfig + 18, // 27: Cast.WorkDetailResp.publishConfig4:type_name -> Cast.PublishConfig + 28, // 28: Cast.WorkDetailResp.WorkLogData:type_name -> Cast.WorkLogInfo + 163, // 29: Cast.WorkDetailResp.mediaAccData:type_name -> Cast.WorkDetailResp.MediaAccDataEntry + 18, // 30: Cast.WorkDetailResp.publishConfig5:type_name -> Cast.PublishConfig + 2, // 31: Cast.UpdateStatusReq.workAction:type_name -> Cast.WorkActionENUM + 3, // 32: Cast.UpdateStatusReq.autoPublish:type_name -> Cast.AutoPublishENUM + 5, // 33: Cast.UpdateStatusReq.confirmFailType:type_name -> Cast.ConfirmFailENUM + 164, // 34: Cast.MediaAccountsResp.data:type_name -> Cast.MediaAccountsResp.Info + 165, // 35: Cast.MediaWorksResp.data:type_name -> Cast.MediaWorksResp.Info + 166, // 36: Cast.PublishResp.data:type_name -> Cast.PublishResp.Info + 16, // 37: Cast.ImportWorkBatchReq.imageWorks:type_name -> Cast.UpdateWorkImageReq + 16, // 38: Cast.ImportWorkBatchResp.imageWorks:type_name -> Cast.UpdateWorkImageReq + 4, // 39: Cast.PlatformInfo.publishStatus:type_name -> Cast.PublishStatusENUM + 46, // 40: Cast.UpdateWorkPlatformInfoReq.PlatformInfoData:type_name -> Cast.PlatformInfo + 0, // 41: Cast.UpdateWorkPublishLogReq.platformID:type_name -> Cast.PlatformIDENUM + 167, // 42: Cast.RefreshWorkListResp.Data:type_name -> Cast.RefreshWorkListResp.Info + 0, // 43: Cast.OAuthCodeToTokenReq.platformID:type_name -> Cast.PlatformIDENUM + 169, // 44: Cast.UpdateOAuthReq.Data:type_name -> Cast.UpdateOAuthReq.Info + 0, // 45: Cast.RefreshTokenReq.platformID:type_name -> Cast.PlatformIDENUM + 71, // 46: Cast.ListVideoScriptsResp.data:type_name -> Cast.VideoScriptInfo + 71, // 47: Cast.UpdateVideoScriptBatchReq.data:type_name -> Cast.VideoScriptInfo + 71, // 48: Cast.UpdateVideoScriptBatchResp.data:type_name -> Cast.VideoScriptInfo + 2, // 49: Cast.UpdateScriptStatusReq.workAction:type_name -> Cast.WorkActionENUM + 6, // 50: Cast.UpdatePromptReq.category:type_name -> Cast.CategoryENUM + 6, // 51: Cast.GetPromptResp.category:type_name -> Cast.CategoryENUM + 6, // 52: Cast.ListPromptsReq.category:type_name -> Cast.CategoryENUM + 6, // 53: Cast.PromptInfo.category:type_name -> Cast.CategoryENUM + 85, // 54: Cast.ListPromptsResp.data:type_name -> Cast.PromptInfo + 85, // 55: Cast.UpdatePromptBatchReq.data:type_name -> Cast.PromptInfo + 85, // 56: Cast.UpdatePromptBatchResp.data:type_name -> Cast.PromptInfo + 89, // 57: Cast.UpdateArtistReq.artistInfo:type_name -> Cast.ArtistInfo + 89, // 58: Cast.GetArtistResp.artistInfo:type_name -> Cast.ArtistInfo + 2, // 59: Cast.UpdateWorkAnalysisStatusReq.workAction:type_name -> Cast.WorkActionENUM + 99, // 60: Cast.GetWorkAnalysisResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries + 100, // 61: Cast.GetWorkAnalysisResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries + 101, // 62: Cast.GetWorkAnalysisResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries + 102, // 63: Cast.GetWorkAnalysisResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries + 103, // 64: Cast.GetWorkAnalysisResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries + 104, // 65: Cast.GetWorkAnalysisResp.topCitiesSeries:type_name -> Cast.WorkAnalysisTopCities + 105, // 66: Cast.GetWorkAnalysisResp.mostActiveDaySeries:type_name -> Cast.WorkAnalysisMostActiveDay + 106, // 67: Cast.GetWorkAnalysisResp.bestPostTimeSeries:type_name -> Cast.WorkAnalysisBestPostTime + 98, // 68: Cast.GetWorkAnalysisDetailResp.WorkAnalysisLogData:type_name -> Cast.WorkAnalysisLogInfo + 99, // 69: Cast.GetWorkAnalysisDetailResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries + 100, // 70: Cast.GetWorkAnalysisDetailResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries + 101, // 71: Cast.GetWorkAnalysisDetailResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries + 102, // 72: Cast.GetWorkAnalysisDetailResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries + 103, // 73: Cast.GetWorkAnalysisDetailResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries + 104, // 74: Cast.GetWorkAnalysisDetailResp.topCitiesSeries:type_name -> Cast.WorkAnalysisTopCities + 105, // 75: Cast.GetWorkAnalysisDetailResp.mostActiveDaySeries:type_name -> Cast.WorkAnalysisMostActiveDay + 106, // 76: Cast.GetWorkAnalysisDetailResp.bestPostTimeSeries:type_name -> Cast.WorkAnalysisBestPostTime + 107, // 77: Cast.GetWorkAnalysisDetailResp.extra:type_name -> Cast.WorkAnalysisExtra + 113, // 78: Cast.ListWorkAnalysisResp.data:type_name -> Cast.WorkAnalysisInfo + 117, // 79: Cast.ArtistDataListResp.data:type_name -> Cast.ArtistDataRespItem + 120, // 80: Cast.MediaDataListResp.data:type_name -> Cast.MediaDataListItem + 99, // 81: Cast.ArtistMetricsSeriesResp.fansSeries:type_name -> Cast.WorkAnalysisFansSeries + 100, // 82: Cast.ArtistMetricsSeriesResp.viewsSeries:type_name -> Cast.WorkAnalysisViewsSeries + 101, // 83: Cast.ArtistMetricsSeriesResp.likesSeries:type_name -> Cast.WorkAnalysisLikesSeries + 102, // 84: Cast.ArtistMetricsSeriesResp.commentsSeries:type_name -> Cast.WorkAnalysisCommentsSeries + 103, // 85: Cast.ArtistMetricsSeriesResp.sharesSeries:type_name -> Cast.WorkAnalysisSharesSeries + 106, // 86: Cast.ArtistMetricsSeriesResp.bestPostTime:type_name -> Cast.WorkAnalysisBestPostTime + 105, // 87: Cast.ArtistMetricsSeriesResp.mostActiveDay:type_name -> Cast.WorkAnalysisMostActiveDay + 127, // 88: Cast.ArtistMetricsDailyWindowResp.fans:type_name -> Cast.SimplePoint + 127, // 89: Cast.ArtistMetricsDailyWindowResp.views:type_name -> Cast.SimplePoint + 127, // 90: Cast.ArtistMetricsDailyWindowResp.likes:type_name -> Cast.SimplePoint + 127, // 91: Cast.ArtistMetricsDailyWindowResp.comments:type_name -> Cast.SimplePoint + 127, // 92: Cast.ArtistMetricsDailyWindowResp.shares:type_name -> Cast.SimplePoint + 128, // 93: Cast.ArtistMetricsDailyWindowResp.bestPostTime:type_name -> Cast.BestPostTimePoint + 129, // 94: Cast.ArtistMetricsDailyWindowResp.mostActiveDay:type_name -> Cast.MostActiveDayPoint + 132, // 95: Cast.TobeConfirmedListResp.data:type_name -> Cast.TobeConfirmedItem + 135, // 96: Cast.UpsertMediaMetricsDailyBatchReq.data:type_name -> Cast.MediaMetricsDailyItem + 138, // 97: Cast.UpsertWorkMetricsDailyBatchReq.data:type_name -> Cast.WorkMetricsDailyItem + 142, // 98: Cast.GetArtistAyrShareInfoResp.data:type_name -> Cast.ArtistAyrShareInfo + 145, // 99: Cast.ListWorkPlatformInfoResp.data:type_name -> Cast.WorkPlatformInfo + 148, // 100: Cast.ListMediaMetricsDailyResp.data:type_name -> Cast.MediaMetricsDailyInfo + 151, // 101: Cast.ListWorkMetricsDailyResp.data:type_name -> Cast.WorkMetricsDailyInfo + 156, // 102: Cast.GetTaskListResp.data:type_name -> Cast.TaskListInfo + 156, // 103: Cast.ListTaskListResp.data:type_name -> Cast.TaskListInfo + 162, // 104: Cast.WorkListResp.Info.PublishMediaIDs:type_name -> Cast.WorkListResp.Info.PublishMediaIDsEntry + 9, // 105: Cast.WorkDetailResp.MediaAccDataEntry.value:type_name -> Cast.MediaUserInfo + 168, // 106: Cast.RefreshWorkListResp.Info.PlatformInfoData:type_name -> Cast.RefreshWorkListResp.Info.PlatformInfo + 0, // 107: Cast.RefreshWorkListResp.Info.PlatformInfo.platformID:type_name -> Cast.PlatformIDENUM + 0, // 108: Cast.UpdateOAuthReq.Info.platformID:type_name -> Cast.PlatformIDENUM + 8, // 109: Cast.Cast.MediaUserList:input_type -> Cast.MediaUserListReq + 11, // 110: Cast.Cast.UpdateMediaAccount:input_type -> Cast.UpdateMediaAccountReq + 13, // 111: Cast.Cast.UnbindManager:input_type -> Cast.UnbindManagerReq + 15, // 112: Cast.Cast.BindManager:input_type -> Cast.BindManagerReq + 16, // 113: Cast.Cast.UpdateWorkImage:input_type -> Cast.UpdateWorkImageReq + 19, // 114: Cast.Cast.UpdateWorkVideo:input_type -> Cast.UpdateWorkVideoReq + 21, // 115: Cast.Cast.MediaInfo:input_type -> Cast.MediaInfoReq + 23, // 116: Cast.Cast.MediaInfoByPlatform:input_type -> Cast.MediaInfoByPlatformReq + 25, // 117: Cast.Cast.WorkList:input_type -> Cast.WorkListReq + 27, // 118: Cast.Cast.WorkDetail:input_type -> Cast.WorkDetailReq + 30, // 119: Cast.Cast.UpdateStatus:input_type -> Cast.UpdateStatusReq + 31, // 120: Cast.Cast.MediaAccounts:input_type -> Cast.MediaAccountsReq + 33, // 121: Cast.Cast.MediaWorks:input_type -> Cast.MediaWorksReq + 35, // 122: Cast.Cast.Publish:input_type -> Cast.PublishReq + 37, // 123: Cast.Cast.RePublish:input_type -> Cast.RePublishReq + 39, // 124: Cast.Cast.DelWork:input_type -> Cast.DelWorkReq + 40, // 125: Cast.Cast.WorkInfo:input_type -> Cast.WorkInfoReq + 42, // 126: Cast.Cast.ArtistInfo:input_type -> Cast.ArtistInfoReq + 44, // 127: Cast.Cast.ImportWorkBatch:input_type -> Cast.ImportWorkBatchReq + 47, // 128: Cast.Cast.UpdateWorkPlatformInfo:input_type -> Cast.UpdateWorkPlatformInfoReq + 49, // 129: Cast.Cast.UpdateWorkPublishLog:input_type -> Cast.UpdateWorkPublishLogReq + 50, // 130: Cast.Cast.RefreshWorkList:input_type -> Cast.RefreshWorkListReq + 52, // 131: Cast.Cast.OAuthAccount:input_type -> Cast.OAuthAccountReq + 54, // 132: Cast.Cast.OAuthAccountV2:input_type -> Cast.OAuthAccountV2Req + 58, // 133: Cast.Cast.OAuthCodeToToken:input_type -> Cast.OAuthCodeToTokenReq + 60, // 134: Cast.Cast.UpdateOAuth:input_type -> Cast.UpdateOAuthReq + 61, // 135: Cast.Cast.RefreshToken:input_type -> Cast.RefreshTokenReq + 63, // 136: Cast.Cast.PublishMediaInfo:input_type -> Cast.PublishMediaInfoReq + 65, // 137: Cast.Cast.Tools:input_type -> Cast.ToolsReq + 66, // 138: Cast.Cast.UpdateVideoScript:input_type -> Cast.UpdateVideoScriptReq + 68, // 139: Cast.Cast.GetVideoScript:input_type -> Cast.GetVideoScriptReq + 70, // 140: Cast.Cast.ListVideoScripts:input_type -> Cast.ListVideoScriptsReq + 73, // 141: Cast.Cast.DeleteVideoScript:input_type -> Cast.DeleteVideoScriptReq + 74, // 142: Cast.Cast.UpdateVideoScriptBatch:input_type -> Cast.UpdateVideoScriptBatchReq + 76, // 143: Cast.Cast.UpdateScriptStatus:input_type -> Cast.UpdateScriptStatusReq + 78, // 144: Cast.Cast.GetLayout:input_type -> Cast.GetLayoutReq + 77, // 145: Cast.Cast.SetLayout:input_type -> Cast.SetLayoutReq + 80, // 146: Cast.Cast.UpdatePrompt:input_type -> Cast.UpdatePromptReq + 81, // 147: Cast.Cast.DeletePrompt:input_type -> Cast.DeletePromptReq + 82, // 148: Cast.Cast.GetPrompt:input_type -> Cast.GetPromptReq + 84, // 149: Cast.Cast.ListPrompts:input_type -> Cast.ListPromptsReq + 87, // 150: Cast.Cast.UpdatePromptBatch:input_type -> Cast.UpdatePromptBatchReq + 90, // 151: Cast.Cast.UpdateArtist:input_type -> Cast.UpdateArtistReq + 92, // 152: Cast.Cast.GetArtist:input_type -> Cast.GetArtistReq + 94, // 153: Cast.Cast.CreateWorkAnalysis:input_type -> Cast.CreateWorkAnalysisReq + 96, // 154: Cast.Cast.UpdateWorkAnalysis:input_type -> Cast.UpdateWorkAnalysisReq + 97, // 155: Cast.Cast.UpdateWorkAnalysisStatus:input_type -> Cast.UpdateWorkAnalysisStatusReq + 108, // 156: Cast.Cast.GetWorkAnalysis:input_type -> Cast.GetWorkAnalysisDetailReq + 109, // 157: Cast.Cast.GetLatestWorkAnalysis:input_type -> Cast.GetLatestWorkAnalysisReq + 112, // 158: Cast.Cast.ListWorkAnalysis:input_type -> Cast.ListWorkAnalysisReq + 115, // 159: Cast.Cast.DeleteWorkAnalysis:input_type -> Cast.DeleteWorkAnalysisReq + 134, // 160: Cast.Cast.UpdateWorkAnalysisApprovalID:input_type -> Cast.UpdateWorkAnalysisApprovalIDReq + 116, // 161: Cast.Cast.ArtistDataList:input_type -> Cast.ArtistDataListReq + 119, // 162: Cast.Cast.MediaDataList:input_type -> Cast.MediaDataListReq + 122, // 163: Cast.Cast.DataOverview:input_type -> Cast.DataOverviewReq + 124, // 164: Cast.Cast.ArtistMetricsSeries:input_type -> Cast.ArtistMetricsSeriesReq + 126, // 165: Cast.Cast.ArtistMetricsDailyWindow:input_type -> Cast.ArtistMetricsDailyWindowReq + 131, // 166: Cast.Cast.TobeConfirmedList:input_type -> Cast.TobeConfirmedListReq + 136, // 167: Cast.Cast.UpsertMediaMetricsDailyBatch:input_type -> Cast.UpsertMediaMetricsDailyBatchReq + 139, // 168: Cast.Cast.UpsertWorkMetricsDailyBatch:input_type -> Cast.UpsertWorkMetricsDailyBatchReq + 147, // 169: Cast.Cast.ListMediaMetricsDaily:input_type -> Cast.ListMediaMetricsDailyReq + 150, // 170: Cast.Cast.ListWorkMetricsDaily:input_type -> Cast.ListWorkMetricsDailyReq + 141, // 171: Cast.Cast.GetArtistAyrShareInfo:input_type -> Cast.GetArtistAyrShareInfoReq + 144, // 172: Cast.Cast.ListWorkPlatformInfo:input_type -> Cast.ListWorkPlatformInfoReq + 153, // 173: Cast.Cast.UpsertTaskList:input_type -> Cast.UpsertTaskListReq + 155, // 174: Cast.Cast.GetTaskList:input_type -> Cast.GetTaskListReq + 158, // 175: Cast.Cast.ListTaskList:input_type -> Cast.ListTaskListReq + 160, // 176: Cast.Cast.DeleteTaskList:input_type -> Cast.DeleteTaskListReq + 10, // 177: Cast.Cast.MediaUserList:output_type -> Cast.MediaUserListResp + 12, // 178: Cast.Cast.UpdateMediaAccount:output_type -> Cast.UpdateMediaAccountResp + 14, // 179: Cast.Cast.UnbindManager:output_type -> Cast.UnbindManagerResp + 170, // 180: Cast.Cast.BindManager:output_type -> google.protobuf.Empty + 17, // 181: Cast.Cast.UpdateWorkImage:output_type -> Cast.UpdateWorkImageResp + 20, // 182: Cast.Cast.UpdateWorkVideo:output_type -> Cast.UpdateWorkVideoResp + 22, // 183: Cast.Cast.MediaInfo:output_type -> Cast.MediaInfoResp + 24, // 184: Cast.Cast.MediaInfoByPlatform:output_type -> Cast.MediaInfoByPlatformResp + 26, // 185: Cast.Cast.WorkList:output_type -> Cast.WorkListResp + 29, // 186: Cast.Cast.WorkDetail:output_type -> Cast.WorkDetailResp + 170, // 187: Cast.Cast.UpdateStatus:output_type -> google.protobuf.Empty + 32, // 188: Cast.Cast.MediaAccounts:output_type -> Cast.MediaAccountsResp + 34, // 189: Cast.Cast.MediaWorks:output_type -> Cast.MediaWorksResp + 36, // 190: Cast.Cast.Publish:output_type -> Cast.PublishResp + 38, // 191: Cast.Cast.RePublish:output_type -> Cast.RePublishResp + 170, // 192: Cast.Cast.DelWork:output_type -> google.protobuf.Empty + 41, // 193: Cast.Cast.WorkInfo:output_type -> Cast.WorkInfoResp + 43, // 194: Cast.Cast.ArtistInfo:output_type -> Cast.ArtistInfoResp + 45, // 195: Cast.Cast.ImportWorkBatch:output_type -> Cast.ImportWorkBatchResp + 48, // 196: Cast.Cast.UpdateWorkPlatformInfo:output_type -> Cast.UpdateWorkPlatformInfoResp + 170, // 197: Cast.Cast.UpdateWorkPublishLog:output_type -> google.protobuf.Empty + 51, // 198: Cast.Cast.RefreshWorkList:output_type -> Cast.RefreshWorkListResp + 53, // 199: Cast.Cast.OAuthAccount:output_type -> Cast.OAuthAccountResp + 55, // 200: Cast.Cast.OAuthAccountV2:output_type -> Cast.OAuthAccountV2Resp + 59, // 201: Cast.Cast.OAuthCodeToToken:output_type -> Cast.OAuthCodeToTokenResp + 170, // 202: Cast.Cast.UpdateOAuth:output_type -> google.protobuf.Empty + 62, // 203: Cast.Cast.RefreshToken:output_type -> Cast.RefreshTokenResp + 64, // 204: Cast.Cast.PublishMediaInfo:output_type -> Cast.PublishMediaInfoResp + 170, // 205: Cast.Cast.Tools:output_type -> google.protobuf.Empty + 67, // 206: Cast.Cast.UpdateVideoScript:output_type -> Cast.UpdateVideoScriptResp + 69, // 207: Cast.Cast.GetVideoScript:output_type -> Cast.GetVideoScriptResp + 72, // 208: Cast.Cast.ListVideoScripts:output_type -> Cast.ListVideoScriptsResp + 170, // 209: Cast.Cast.DeleteVideoScript:output_type -> google.protobuf.Empty + 75, // 210: Cast.Cast.UpdateVideoScriptBatch:output_type -> Cast.UpdateVideoScriptBatchResp + 170, // 211: Cast.Cast.UpdateScriptStatus:output_type -> google.protobuf.Empty + 79, // 212: Cast.Cast.GetLayout:output_type -> Cast.GetLayoutResp + 170, // 213: Cast.Cast.SetLayout:output_type -> google.protobuf.Empty + 170, // 214: Cast.Cast.UpdatePrompt:output_type -> google.protobuf.Empty + 170, // 215: Cast.Cast.DeletePrompt:output_type -> google.protobuf.Empty + 83, // 216: Cast.Cast.GetPrompt:output_type -> Cast.GetPromptResp + 86, // 217: Cast.Cast.ListPrompts:output_type -> Cast.ListPromptsResp + 88, // 218: Cast.Cast.UpdatePromptBatch:output_type -> Cast.UpdatePromptBatchResp + 91, // 219: Cast.Cast.UpdateArtist:output_type -> Cast.UpdateArtistResp + 93, // 220: Cast.Cast.GetArtist:output_type -> Cast.GetArtistResp + 95, // 221: Cast.Cast.CreateWorkAnalysis:output_type -> Cast.CreateWorkAnalysisResp + 170, // 222: Cast.Cast.UpdateWorkAnalysis:output_type -> google.protobuf.Empty + 170, // 223: Cast.Cast.UpdateWorkAnalysisStatus:output_type -> google.protobuf.Empty + 111, // 224: Cast.Cast.GetWorkAnalysis:output_type -> Cast.GetWorkAnalysisDetailResp + 110, // 225: Cast.Cast.GetLatestWorkAnalysis:output_type -> Cast.GetWorkAnalysisResp + 114, // 226: Cast.Cast.ListWorkAnalysis:output_type -> Cast.ListWorkAnalysisResp + 170, // 227: Cast.Cast.DeleteWorkAnalysis:output_type -> google.protobuf.Empty + 170, // 228: Cast.Cast.UpdateWorkAnalysisApprovalID:output_type -> google.protobuf.Empty + 118, // 229: Cast.Cast.ArtistDataList:output_type -> Cast.ArtistDataListResp + 121, // 230: Cast.Cast.MediaDataList:output_type -> Cast.MediaDataListResp + 123, // 231: Cast.Cast.DataOverview:output_type -> Cast.DataOverviewResp + 125, // 232: Cast.Cast.ArtistMetricsSeries:output_type -> Cast.ArtistMetricsSeriesResp + 130, // 233: Cast.Cast.ArtistMetricsDailyWindow:output_type -> Cast.ArtistMetricsDailyWindowResp + 133, // 234: Cast.Cast.TobeConfirmedList:output_type -> Cast.TobeConfirmedListResp + 137, // 235: Cast.Cast.UpsertMediaMetricsDailyBatch:output_type -> Cast.UpsertMediaMetricsDailyBatchResp + 140, // 236: Cast.Cast.UpsertWorkMetricsDailyBatch:output_type -> Cast.UpsertWorkMetricsDailyBatchResp + 149, // 237: Cast.Cast.ListMediaMetricsDaily:output_type -> Cast.ListMediaMetricsDailyResp + 152, // 238: Cast.Cast.ListWorkMetricsDaily:output_type -> Cast.ListWorkMetricsDailyResp + 143, // 239: Cast.Cast.GetArtistAyrShareInfo:output_type -> Cast.GetArtistAyrShareInfoResp + 146, // 240: Cast.Cast.ListWorkPlatformInfo:output_type -> Cast.ListWorkPlatformInfoResp + 154, // 241: Cast.Cast.UpsertTaskList:output_type -> Cast.UpsertTaskListResp + 157, // 242: Cast.Cast.GetTaskList:output_type -> Cast.GetTaskListResp + 159, // 243: Cast.Cast.ListTaskList:output_type -> Cast.ListTaskListResp + 170, // 244: Cast.Cast.DeleteTaskList:output_type -> google.protobuf.Empty + 177, // [177:245] is the sub-list for method output_type + 109, // [109:177] is the sub-list for method input_type + 109, // [109:109] is the sub-list for extension type_name + 109, // [109:109] is the sub-list for extension extendee + 0, // [0:109] is the sub-list for field type_name } func init() { file_pb_fiee_cast_proto_init() } @@ -15577,7 +17528,7 @@ func file_pb_fiee_cast_proto_init() { } if !protoimpl.UnsafeEnabled { file_pb_fiee_cast_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaUserListReq); i { + switch v := v.(*AsInfo); i { case 0: return &v.state case 1: @@ -15589,7 +17540,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaUserInfo); i { + switch v := v.(*MediaUserListReq); i { case 0: return &v.state case 1: @@ -15601,7 +17552,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaUserListResp); i { + switch v := v.(*MediaUserInfo); i { case 0: return &v.state case 1: @@ -15613,7 +17564,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateMediaAccountReq); i { + switch v := v.(*MediaUserListResp); i { case 0: return &v.state case 1: @@ -15625,7 +17576,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateMediaAccountResp); i { + switch v := v.(*UpdateMediaAccountReq); i { case 0: return &v.state case 1: @@ -15637,7 +17588,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UnbindManagerReq); i { + switch v := v.(*UpdateMediaAccountResp); i { case 0: return &v.state case 1: @@ -15649,7 +17600,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UnbindManagerResp); i { + switch v := v.(*UnbindManagerReq); i { case 0: return &v.state case 1: @@ -15661,7 +17612,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BindManagerReq); i { + switch v := v.(*UnbindManagerResp); i { case 0: return &v.state case 1: @@ -15673,7 +17624,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateWorkImageReq); i { + switch v := v.(*BindManagerReq); i { case 0: return &v.state case 1: @@ -15685,7 +17636,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateWorkImageResp); i { + switch v := v.(*UpdateWorkImageReq); i { case 0: return &v.state case 1: @@ -15697,7 +17648,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PublishConfig); i { + switch v := v.(*UpdateWorkImageResp); i { case 0: return &v.state case 1: @@ -15709,7 +17660,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateWorkVideoReq); i { + switch v := v.(*PublishConfig); i { case 0: return &v.state case 1: @@ -15721,7 +17672,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateWorkVideoResp); i { + switch v := v.(*UpdateWorkVideoReq); i { case 0: return &v.state case 1: @@ -15733,7 +17684,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaInfoReq); i { + switch v := v.(*UpdateWorkVideoResp); i { case 0: return &v.state case 1: @@ -15745,7 +17696,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaInfoResp); i { + switch v := v.(*MediaInfoReq); i { case 0: return &v.state case 1: @@ -15757,7 +17708,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaInfoByPlatformReq); i { + switch v := v.(*MediaInfoResp); i { case 0: return &v.state case 1: @@ -15769,7 +17720,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaInfoByPlatformResp); i { + switch v := v.(*MediaInfoByPlatformReq); i { case 0: return &v.state case 1: @@ -15781,7 +17732,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkListReq); i { + switch v := v.(*MediaInfoByPlatformResp); i { case 0: return &v.state case 1: @@ -15793,7 +17744,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkListResp); i { + switch v := v.(*WorkListReq); i { case 0: return &v.state case 1: @@ -15805,7 +17756,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkDetailReq); i { + switch v := v.(*WorkListResp); i { case 0: return &v.state case 1: @@ -15817,7 +17768,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkLogInfo); i { + switch v := v.(*WorkDetailReq); i { case 0: return &v.state case 1: @@ -15829,7 +17780,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkDetailResp); i { + switch v := v.(*WorkLogInfo); i { case 0: return &v.state case 1: @@ -15841,7 +17792,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateStatusReq); i { + switch v := v.(*WorkDetailResp); i { case 0: return &v.state case 1: @@ -15853,7 +17804,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaAccountsReq); i { + switch v := v.(*UpdateStatusReq); i { case 0: return &v.state case 1: @@ -15865,7 +17816,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaAccountsResp); i { + switch v := v.(*MediaAccountsReq); i { case 0: return &v.state case 1: @@ -15877,7 +17828,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaWorksReq); i { + switch v := v.(*MediaAccountsResp); i { case 0: return &v.state case 1: @@ -15889,7 +17840,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaWorksResp); i { + switch v := v.(*MediaWorksReq); i { case 0: return &v.state case 1: @@ -15901,7 +17852,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PublishReq); i { + switch v := v.(*MediaWorksResp); i { case 0: return &v.state case 1: @@ -15913,7 +17864,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PublishResp); i { + switch v := v.(*PublishReq); i { case 0: return &v.state case 1: @@ -15925,7 +17876,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RePublishReq); i { + switch v := v.(*PublishResp); i { case 0: return &v.state case 1: @@ -15937,7 +17888,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RePublishResp); i { + switch v := v.(*RePublishReq); i { case 0: return &v.state case 1: @@ -15949,7 +17900,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DelWorkReq); i { + switch v := v.(*RePublishResp); i { case 0: return &v.state case 1: @@ -15961,7 +17912,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkInfoReq); i { + switch v := v.(*DelWorkReq); i { case 0: return &v.state case 1: @@ -15973,7 +17924,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkInfoResp); i { + switch v := v.(*WorkInfoReq); i { case 0: return &v.state case 1: @@ -15985,7 +17936,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtistInfoReq); i { + switch v := v.(*WorkInfoResp); i { case 0: return &v.state case 1: @@ -15997,7 +17948,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtistInfoResp); i { + switch v := v.(*ArtistInfoReq); i { case 0: return &v.state case 1: @@ -16009,7 +17960,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ImportWorkBatchReq); i { + switch v := v.(*ArtistInfoResp); i { case 0: return &v.state case 1: @@ -16021,7 +17972,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ImportWorkBatchResp); i { + switch v := v.(*ImportWorkBatchReq); i { case 0: return &v.state case 1: @@ -16033,7 +17984,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PlatformInfo); i { + switch v := v.(*ImportWorkBatchResp); i { case 0: return &v.state case 1: @@ -16045,7 +17996,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateWorkPlatformInfoReq); i { + switch v := v.(*PlatformInfo); i { case 0: return &v.state case 1: @@ -16057,7 +18008,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateWorkPlatformInfoResp); i { + switch v := v.(*UpdateWorkPlatformInfoReq); i { case 0: return &v.state case 1: @@ -16069,7 +18020,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateWorkPublishLogReq); i { + switch v := v.(*UpdateWorkPlatformInfoResp); i { case 0: return &v.state case 1: @@ -16081,7 +18032,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RefreshWorkListReq); i { + switch v := v.(*UpdateWorkPublishLogReq); i { case 0: return &v.state case 1: @@ -16093,7 +18044,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RefreshWorkListResp); i { + switch v := v.(*RefreshWorkListReq); i { case 0: return &v.state case 1: @@ -16105,7 +18056,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OAuthAccountReq); i { + switch v := v.(*RefreshWorkListResp); i { case 0: return &v.state case 1: @@ -16117,7 +18068,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OAuthAccountResp); i { + switch v := v.(*OAuthAccountReq); i { case 0: return &v.state case 1: @@ -16129,7 +18080,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OAuthAccountV2Req); i { + switch v := v.(*OAuthAccountResp); i { case 0: return &v.state case 1: @@ -16141,7 +18092,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OAuthAccountV2Resp); i { + switch v := v.(*OAuthAccountV2Req); i { case 0: return &v.state case 1: @@ -16153,7 +18104,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OAuthYoutubeTokenReq); i { + switch v := v.(*OAuthAccountV2Resp); i { case 0: return &v.state case 1: @@ -16165,7 +18116,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OAuthYoutubeTokenResp); i { + switch v := v.(*OAuthYoutubeTokenReq); i { case 0: return &v.state case 1: @@ -16177,7 +18128,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OAuthCodeToTokenReq); i { + switch v := v.(*OAuthYoutubeTokenResp); i { case 0: return &v.state case 1: @@ -16189,7 +18140,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OAuthCodeToTokenResp); i { + switch v := v.(*OAuthCodeToTokenReq); i { case 0: return &v.state case 1: @@ -16201,7 +18152,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateOAuthReq); i { + switch v := v.(*OAuthCodeToTokenResp); i { case 0: return &v.state case 1: @@ -16213,7 +18164,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RefreshTokenReq); i { + switch v := v.(*UpdateOAuthReq); i { case 0: return &v.state case 1: @@ -16225,7 +18176,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RefreshTokenResp); i { + switch v := v.(*RefreshTokenReq); i { case 0: return &v.state case 1: @@ -16237,7 +18188,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PublishMediaInfoReq); i { + switch v := v.(*RefreshTokenResp); i { case 0: return &v.state case 1: @@ -16249,7 +18200,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PublishMediaInfoResp); i { + switch v := v.(*PublishMediaInfoReq); i { case 0: return &v.state case 1: @@ -16261,7 +18212,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateVideoScriptReq); i { + switch v := v.(*PublishMediaInfoResp); i { case 0: return &v.state case 1: @@ -16273,7 +18224,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateVideoScriptResp); i { + switch v := v.(*ToolsReq); i { case 0: return &v.state case 1: @@ -16285,7 +18236,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetVideoScriptReq); i { + switch v := v.(*UpdateVideoScriptReq); i { case 0: return &v.state case 1: @@ -16297,7 +18248,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetVideoScriptResp); i { + switch v := v.(*UpdateVideoScriptResp); i { case 0: return &v.state case 1: @@ -16309,7 +18260,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListVideoScriptsReq); i { + switch v := v.(*GetVideoScriptReq); i { case 0: return &v.state case 1: @@ -16321,7 +18272,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*VideoScriptInfo); i { + switch v := v.(*GetVideoScriptResp); i { case 0: return &v.state case 1: @@ -16333,7 +18284,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListVideoScriptsResp); i { + switch v := v.(*ListVideoScriptsReq); i { case 0: return &v.state case 1: @@ -16345,7 +18296,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteVideoScriptReq); i { + switch v := v.(*VideoScriptInfo); i { case 0: return &v.state case 1: @@ -16357,7 +18308,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateVideoScriptBatchReq); i { + switch v := v.(*ListVideoScriptsResp); i { case 0: return &v.state case 1: @@ -16369,7 +18320,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateVideoScriptBatchResp); i { + switch v := v.(*DeleteVideoScriptReq); i { case 0: return &v.state case 1: @@ -16381,7 +18332,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateScriptStatusReq); i { + switch v := v.(*UpdateVideoScriptBatchReq); i { case 0: return &v.state case 1: @@ -16393,7 +18344,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SetLayoutReq); i { + switch v := v.(*UpdateVideoScriptBatchResp); i { case 0: return &v.state case 1: @@ -16405,7 +18356,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetLayoutReq); i { + switch v := v.(*UpdateScriptStatusReq); i { case 0: return &v.state case 1: @@ -16417,7 +18368,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetLayoutResp); i { + switch v := v.(*SetLayoutReq); i { case 0: return &v.state case 1: @@ -16429,7 +18380,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdatePromptReq); i { + switch v := v.(*GetLayoutReq); i { case 0: return &v.state case 1: @@ -16441,7 +18392,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeletePromptReq); i { + switch v := v.(*GetLayoutResp); i { case 0: return &v.state case 1: @@ -16453,7 +18404,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPromptReq); i { + switch v := v.(*UpdatePromptReq); i { case 0: return &v.state case 1: @@ -16465,7 +18416,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetPromptResp); i { + switch v := v.(*DeletePromptReq); i { case 0: return &v.state case 1: @@ -16477,7 +18428,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListPromptsReq); i { + switch v := v.(*GetPromptReq); i { case 0: return &v.state case 1: @@ -16489,7 +18440,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PromptInfo); i { + switch v := v.(*GetPromptResp); i { case 0: return &v.state case 1: @@ -16501,7 +18452,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListPromptsResp); i { + switch v := v.(*ListPromptsReq); i { case 0: return &v.state case 1: @@ -16513,7 +18464,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdatePromptBatchReq); i { + switch v := v.(*PromptInfo); i { case 0: return &v.state case 1: @@ -16525,7 +18476,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdatePromptBatchResp); i { + switch v := v.(*ListPromptsResp); i { case 0: return &v.state case 1: @@ -16537,7 +18488,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtistInfo); i { + switch v := v.(*UpdatePromptBatchReq); i { case 0: return &v.state case 1: @@ -16549,7 +18500,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateArtistReq); i { + switch v := v.(*UpdatePromptBatchResp); i { case 0: return &v.state case 1: @@ -16561,7 +18512,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateArtistResp); i { + switch v := v.(*ArtistInfo); i { case 0: return &v.state case 1: @@ -16573,7 +18524,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetArtistReq); i { + switch v := v.(*UpdateArtistReq); i { case 0: return &v.state case 1: @@ -16585,7 +18536,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetArtistResp); i { + switch v := v.(*UpdateArtistResp); i { case 0: return &v.state case 1: @@ -16597,7 +18548,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateWorkAnalysisReq); i { + switch v := v.(*GetArtistReq); i { case 0: return &v.state case 1: @@ -16609,7 +18560,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateWorkAnalysisResp); i { + switch v := v.(*GetArtistResp); i { case 0: return &v.state case 1: @@ -16621,7 +18572,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateWorkAnalysisReq); i { + switch v := v.(*CreateWorkAnalysisReq); i { case 0: return &v.state case 1: @@ -16633,7 +18584,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateWorkAnalysisStatusReq); i { + switch v := v.(*CreateWorkAnalysisResp); i { case 0: return &v.state case 1: @@ -16645,7 +18596,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkAnalysisLogInfo); i { + switch v := v.(*UpdateWorkAnalysisReq); i { case 0: return &v.state case 1: @@ -16657,7 +18608,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkAnalysisFansSeries); i { + switch v := v.(*UpdateWorkAnalysisStatusReq); i { case 0: return &v.state case 1: @@ -16669,7 +18620,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkAnalysisViewsSeries); i { + switch v := v.(*WorkAnalysisLogInfo); i { case 0: return &v.state case 1: @@ -16681,7 +18632,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkAnalysisLikesSeries); i { + switch v := v.(*WorkAnalysisFansSeries); i { case 0: return &v.state case 1: @@ -16693,7 +18644,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkAnalysisCommentsSeries); i { + switch v := v.(*WorkAnalysisViewsSeries); i { case 0: return &v.state case 1: @@ -16705,7 +18656,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkAnalysisSharesSeries); i { + switch v := v.(*WorkAnalysisLikesSeries); i { case 0: return &v.state case 1: @@ -16717,7 +18668,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkAnalysisTopCities); i { + switch v := v.(*WorkAnalysisCommentsSeries); i { case 0: return &v.state case 1: @@ -16729,7 +18680,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkAnalysisMostActiveDay); i { + switch v := v.(*WorkAnalysisSharesSeries); i { case 0: return &v.state case 1: @@ -16741,7 +18692,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkAnalysisBestPostTime); i { + switch v := v.(*WorkAnalysisTopCities); i { case 0: return &v.state case 1: @@ -16753,7 +18704,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkAnalysisExtra); i { + switch v := v.(*WorkAnalysisMostActiveDay); i { case 0: return &v.state case 1: @@ -16765,7 +18716,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetWorkAnalysisDetailReq); i { + switch v := v.(*WorkAnalysisBestPostTime); i { case 0: return &v.state case 1: @@ -16777,7 +18728,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetLatestWorkAnalysisReq); i { + switch v := v.(*WorkAnalysisExtra); i { case 0: return &v.state case 1: @@ -16789,7 +18740,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetWorkAnalysisResp); i { + switch v := v.(*GetWorkAnalysisDetailReq); i { case 0: return &v.state case 1: @@ -16801,7 +18752,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetWorkAnalysisDetailResp); i { + switch v := v.(*GetLatestWorkAnalysisReq); i { case 0: return &v.state case 1: @@ -16813,7 +18764,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListWorkAnalysisReq); i { + switch v := v.(*GetWorkAnalysisResp); i { case 0: return &v.state case 1: @@ -16825,7 +18776,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkAnalysisInfo); i { + switch v := v.(*GetWorkAnalysisDetailResp); i { case 0: return &v.state case 1: @@ -16837,7 +18788,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListWorkAnalysisResp); i { + switch v := v.(*ListWorkAnalysisReq); i { case 0: return &v.state case 1: @@ -16849,7 +18800,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteWorkAnalysisReq); i { + switch v := v.(*WorkAnalysisInfo); i { case 0: return &v.state case 1: @@ -16861,7 +18812,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtistDataListReq); i { + switch v := v.(*ListWorkAnalysisResp); i { case 0: return &v.state case 1: @@ -16873,7 +18824,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtistDataRespItem); i { + switch v := v.(*DeleteWorkAnalysisReq); i { case 0: return &v.state case 1: @@ -16885,7 +18836,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtistDataListResp); i { + switch v := v.(*ArtistDataListReq); i { case 0: return &v.state case 1: @@ -16897,7 +18848,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaDataListReq); i { + switch v := v.(*ArtistDataRespItem); i { case 0: return &v.state case 1: @@ -16909,7 +18860,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaDataListItem); i { + switch v := v.(*ArtistDataListResp); i { case 0: return &v.state case 1: @@ -16921,7 +18872,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaDataListResp); i { + switch v := v.(*MediaDataListReq); i { case 0: return &v.state case 1: @@ -16933,7 +18884,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DataOverviewReq); i { + switch v := v.(*MediaDataListItem); i { case 0: return &v.state case 1: @@ -16945,7 +18896,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DataOverviewResp); i { + switch v := v.(*MediaDataListResp); i { case 0: return &v.state case 1: @@ -16957,7 +18908,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtistMetricsSeriesReq); i { + switch v := v.(*DataOverviewReq); i { case 0: return &v.state case 1: @@ -16969,7 +18920,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtistMetricsSeriesResp); i { + switch v := v.(*DataOverviewResp); i { case 0: return &v.state case 1: @@ -16981,7 +18932,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtistMetricsDailyWindowReq); i { + switch v := v.(*ArtistMetricsSeriesReq); i { case 0: return &v.state case 1: @@ -16993,7 +18944,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SimplePoint); i { + switch v := v.(*ArtistMetricsSeriesResp); i { case 0: return &v.state case 1: @@ -17005,7 +18956,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BestPostTimePoint); i { + switch v := v.(*ArtistMetricsDailyWindowReq); i { case 0: return &v.state case 1: @@ -17017,7 +18968,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MostActiveDayPoint); i { + switch v := v.(*SimplePoint); i { case 0: return &v.state case 1: @@ -17029,7 +18980,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtistMetricsDailyWindowResp); i { + switch v := v.(*BestPostTimePoint); i { case 0: return &v.state case 1: @@ -17041,7 +18992,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TobeConfirmedListReq); i { + switch v := v.(*MostActiveDayPoint); i { case 0: return &v.state case 1: @@ -17053,7 +19004,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TobeConfirmedItem); i { + switch v := v.(*ArtistMetricsDailyWindowResp); i { case 0: return &v.state case 1: @@ -17065,7 +19016,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*TobeConfirmedListResp); i { + switch v := v.(*TobeConfirmedListReq); i { case 0: return &v.state case 1: @@ -17077,7 +19028,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateWorkAnalysisApprovalIDReq); i { + switch v := v.(*TobeConfirmedItem); i { case 0: return &v.state case 1: @@ -17089,7 +19040,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaMetricsDailyItem); i { + switch v := v.(*TobeConfirmedListResp); i { case 0: return &v.state case 1: @@ -17101,7 +19052,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpsertMediaMetricsDailyBatchReq); i { + switch v := v.(*UpdateWorkAnalysisApprovalIDReq); i { case 0: return &v.state case 1: @@ -17113,7 +19064,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpsertMediaMetricsDailyBatchResp); i { + switch v := v.(*MediaMetricsDailyItem); i { case 0: return &v.state case 1: @@ -17125,7 +19076,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkMetricsDailyItem); i { + switch v := v.(*UpsertMediaMetricsDailyBatchReq); i { case 0: return &v.state case 1: @@ -17137,7 +19088,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpsertWorkMetricsDailyBatchReq); i { + switch v := v.(*UpsertMediaMetricsDailyBatchResp); i { case 0: return &v.state case 1: @@ -17149,7 +19100,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpsertWorkMetricsDailyBatchResp); i { + switch v := v.(*WorkMetricsDailyItem); i { case 0: return &v.state case 1: @@ -17161,7 +19112,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetArtistAyrShareInfoReq); i { + switch v := v.(*UpsertWorkMetricsDailyBatchReq); i { case 0: return &v.state case 1: @@ -17173,7 +19124,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtistAyrShareInfo); i { + switch v := v.(*UpsertWorkMetricsDailyBatchResp); i { case 0: return &v.state case 1: @@ -17185,7 +19136,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetArtistAyrShareInfoResp); i { + switch v := v.(*GetArtistAyrShareInfoReq); i { case 0: return &v.state case 1: @@ -17197,7 +19148,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListWorkPlatformInfoReq); i { + switch v := v.(*ArtistAyrShareInfo); i { case 0: return &v.state case 1: @@ -17209,7 +19160,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkPlatformInfo); i { + switch v := v.(*GetArtistAyrShareInfoResp); i { case 0: return &v.state case 1: @@ -17221,7 +19172,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ListWorkPlatformInfoResp); i { + switch v := v.(*ListWorkPlatformInfoReq); i { case 0: return &v.state case 1: @@ -17233,7 +19184,19 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*WorkListResp_Info); i { + switch v := v.(*WorkPlatformInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkPlatformInfoResp); i { case 0: return &v.state case 1: @@ -17245,7 +19208,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaAccountsResp_Info); i { + switch v := v.(*ListMediaMetricsDailyReq); i { case 0: return &v.state case 1: @@ -17257,7 +19220,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*MediaWorksResp_Info); i { + switch v := v.(*MediaMetricsDailyInfo); i { case 0: return &v.state case 1: @@ -17269,7 +19232,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*PublishResp_Info); i { + switch v := v.(*ListMediaMetricsDailyResp); i { case 0: return &v.state case 1: @@ -17281,7 +19244,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RefreshWorkListResp_Info); i { + switch v := v.(*ListWorkMetricsDailyReq); i { case 0: return &v.state case 1: @@ -17293,7 +19256,7 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*RefreshWorkListResp_Info_PlatformInfo); i { + switch v := v.(*WorkMetricsDailyInfo); i { case 0: return &v.state case 1: @@ -17305,6 +19268,186 @@ func file_pb_fiee_cast_proto_init() { } } file_pb_fiee_cast_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkMetricsDailyResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertTaskListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertTaskListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetTaskListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TaskListInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetTaskListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListTaskListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListTaskListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteTaskListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkListResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[157].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaAccountsResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[158].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaWorksResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshWorkListResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshWorkListResp_Info_PlatformInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateOAuthReq_Info); i { case 0: return &v.state @@ -17322,8 +19465,8 @@ func file_pb_fiee_cast_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pb_fiee_cast_proto_rawDesc, - NumEnums: 6, - NumMessages: 146, + NumEnums: 7, + NumMessages: 163, NumExtensions: 0, NumServices: 1, }, diff --git a/api/cast/cast.pb.validate.go b/api/cast/cast.pb.validate.go index 579eea6..2d8454f 100644 --- a/api/cast/cast.pb.validate.go +++ b/api/cast/cast.pb.validate.go @@ -35,6 +35,108 @@ var ( _ = sort.Sort ) +// Validate checks the field values on AsInfo with the rules defined in the +// proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *AsInfo) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on AsInfo with the rules defined in the +// proto definition for this message. If any rules are violated, the result is +// a list of violation errors wrapped in AsInfoMultiError, or nil if none found. +func (m *AsInfo) ValidateAll() error { + return m.validate(true) +} + +func (m *AsInfo) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for ProfileKey + + // no validation rules for AsID + + if len(errors) > 0 { + return AsInfoMultiError(errors) + } + + return nil +} + +// AsInfoMultiError is an error wrapping multiple validation errors returned by +// AsInfo.ValidateAll() if the designated constraints aren't met. +type AsInfoMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m AsInfoMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m AsInfoMultiError) AllErrors() []error { return m } + +// AsInfoValidationError is the validation error returned by AsInfo.Validate if +// the designated constraints aren't met. +type AsInfoValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e AsInfoValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e AsInfoValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e AsInfoValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e AsInfoValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e AsInfoValidationError) ErrorName() string { return "AsInfoValidationError" } + +// Error satisfies the builtin error interface +func (e AsInfoValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sAsInfo.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = AsInfoValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = AsInfoValidationError{} + // Validate checks the field values on MediaUserListReq with the rules defined // in the proto definition for this message. If any rules are violated, the // first error encountered is returned, or nil if there are no violations. @@ -81,6 +183,8 @@ func (m *MediaUserListReq) validate(all bool) error { // no validation rules for NeedStats + // no validation rules for NeedAsInfo + if len(errors) > 0 { return MediaUserListReqMultiError(errors) } @@ -213,6 +317,35 @@ func (m *MediaUserInfo) validate(all bool) error { // no validation rules for ReleasedPostTotal + if all { + switch v := interface{}(m.GetAsInfo()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, MediaUserInfoValidationError{ + field: "AsInfo", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, MediaUserInfoValidationError{ + field: "AsInfo", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetAsInfo()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return MediaUserInfoValidationError{ + field: "AsInfo", + reason: "embedded message failed validation", + cause: err, + } + } + } + if len(errors) > 0 { return MediaUserInfoMultiError(errors) } @@ -2372,6 +2505,24 @@ func (m *WorkListReq) validate(all bool) error { // no validation rules for DmStatus + // no validation rules for StartTime1 + + // no validation rules for EndTime1 + + // no validation rules for StartTime4 + + // no validation rules for EndTime4 + + // no validation rules for StartTime9 + + // no validation rules for EndTime9 + + // no validation rules for StartTime6 + + // no validation rules for EndTime6 + + // no validation rules for NeedPublishMediaID + // no validation rules for YoutubeStatus // no validation rules for BlueskyStatus @@ -3047,6 +3198,8 @@ func (m *WorkDetailResp) validate(all bool) error { // no validation rules for ArtistSubNum + // no validation rules for ScriptInfo + if all { switch v := interface{}(m.GetPublishConfig5()).(type) { case interface{ ValidateAll() error }: @@ -3192,6 +3345,10 @@ func (m *UpdateStatusReq) validate(all bool) error { // no validation rules for CostType + // no validation rules for ConfirmFailType + + // no validation rules for ApprovalTime + if len(errors) > 0 { return UpdateStatusReqMultiError(errors) } @@ -4109,6 +4266,8 @@ func (m *RePublishResp) validate(all bool) error { // no validation rules for WorkCategory + // no validation rules for WorkUuid + if len(errors) > 0 { return RePublishRespMultiError(errors) } @@ -4632,6 +4791,10 @@ func (m *ArtistInfoResp) validate(all bool) error { // no validation rules for DMEffectiveCount + // no validation rules for ProfileKey + + // no validation rules for SubNum + if len(errors) > 0 { return ArtistInfoRespMultiError(errors) } @@ -7095,6 +7258,107 @@ var _ interface { ErrorName() string } = PublishMediaInfoRespValidationError{} +// Validate checks the field values on ToolsReq with the rules defined in the +// proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *ToolsReq) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ToolsReq with the rules defined in +// the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in ToolsReqMultiError, or nil +// if none found. +func (m *ToolsReq) ValidateAll() error { + return m.validate(true) +} + +func (m *ToolsReq) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Action + + if len(errors) > 0 { + return ToolsReqMultiError(errors) + } + + return nil +} + +// ToolsReqMultiError is an error wrapping multiple validation errors returned +// by ToolsReq.ValidateAll() if the designated constraints aren't met. +type ToolsReqMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ToolsReqMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ToolsReqMultiError) AllErrors() []error { return m } + +// ToolsReqValidationError is the validation error returned by +// ToolsReq.Validate if the designated constraints aren't met. +type ToolsReqValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ToolsReqValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ToolsReqValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ToolsReqValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ToolsReqValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ToolsReqValidationError) ErrorName() string { return "ToolsReqValidationError" } + +// Error satisfies the builtin error interface +func (e ToolsReqValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sToolsReq.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ToolsReqValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ToolsReqValidationError{} + // Validate checks the field values on UpdateVideoScriptReq with the rules // defined in the proto definition for this message. If any rules are // violated, the first error encountered is returned, or nil if there are no violations. @@ -16344,6 +16608,14 @@ func (m *MediaMetricsDailyItem) validate(all bool) error { // no validation rules for ImageCount + // no validation rules for ProfileKey + + // no validation rules for IsSuccess + + // no validation rules for FailReason + + // no validation rules for FailType + if len(errors) > 0 { return MediaMetricsDailyItemMultiError(errors) } @@ -16716,6 +16988,16 @@ func (m *WorkMetricsDailyItem) validate(all bool) error { // no validation rules for SharesCount + // no validation rules for PublishMediaID + + // no validation rules for ProfileKey + + // no validation rules for IsSuccess + + // no validation rules for FailReason + + // no validation rules for FailType + if len(errors) > 0 { return WorkMetricsDailyItemMultiError(errors) } @@ -17784,6 +18066,1712 @@ var _ interface { ErrorName() string } = ListWorkPlatformInfoRespValidationError{} +// Validate checks the field values on ListMediaMetricsDailyReq with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *ListMediaMetricsDailyReq) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ListMediaMetricsDailyReq with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ListMediaMetricsDailyReqMultiError, or nil if none found. +func (m *ListMediaMetricsDailyReq) ValidateAll() error { + return m.validate(true) +} + +func (m *ListMediaMetricsDailyReq) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for IsSuccess + + // no validation rules for FailType + + // no validation rules for Page + + // no validation rules for PageSize + + // no validation rules for Date + + if len(errors) > 0 { + return ListMediaMetricsDailyReqMultiError(errors) + } + + return nil +} + +// ListMediaMetricsDailyReqMultiError is an error wrapping multiple validation +// errors returned by ListMediaMetricsDailyReq.ValidateAll() if the designated +// constraints aren't met. +type ListMediaMetricsDailyReqMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ListMediaMetricsDailyReqMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ListMediaMetricsDailyReqMultiError) AllErrors() []error { return m } + +// ListMediaMetricsDailyReqValidationError is the validation error returned by +// ListMediaMetricsDailyReq.Validate if the designated constraints aren't met. +type ListMediaMetricsDailyReqValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ListMediaMetricsDailyReqValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ListMediaMetricsDailyReqValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ListMediaMetricsDailyReqValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ListMediaMetricsDailyReqValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ListMediaMetricsDailyReqValidationError) ErrorName() string { + return "ListMediaMetricsDailyReqValidationError" +} + +// Error satisfies the builtin error interface +func (e ListMediaMetricsDailyReqValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sListMediaMetricsDailyReq.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ListMediaMetricsDailyReqValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ListMediaMetricsDailyReqValidationError{} + +// Validate checks the field values on MediaMetricsDailyInfo with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *MediaMetricsDailyInfo) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on MediaMetricsDailyInfo with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// MediaMetricsDailyInfoMultiError, or nil if none found. +func (m *MediaMetricsDailyInfo) ValidateAll() error { + return m.validate(true) +} + +func (m *MediaMetricsDailyInfo) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Uuid + + // no validation rules for ArtistUuid + + // no validation rules for MediaAccUserID + + // no validation rules for MediaName + + // no validation rules for ArtistName + + // no validation rules for ArtistPhone + + // no validation rules for PlatformID + + // no validation rules for Date + + // no validation rules for FansCount + + // no validation rules for ViewsCount + + // no validation rules for LikesCount + + // no validation rules for CommentsCount + + // no validation rules for SharesCount + + // no validation rules for VideoCount + + // no validation rules for ImageCount + + // no validation rules for ProfileKey + + // no validation rules for IsSuccess + + // no validation rules for FailReason + + // no validation rules for FailType + + // no validation rules for CreatedAt + + // no validation rules for UpdatedAt + + if len(errors) > 0 { + return MediaMetricsDailyInfoMultiError(errors) + } + + return nil +} + +// MediaMetricsDailyInfoMultiError is an error wrapping multiple validation +// errors returned by MediaMetricsDailyInfo.ValidateAll() if the designated +// constraints aren't met. +type MediaMetricsDailyInfoMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m MediaMetricsDailyInfoMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m MediaMetricsDailyInfoMultiError) AllErrors() []error { return m } + +// MediaMetricsDailyInfoValidationError is the validation error returned by +// MediaMetricsDailyInfo.Validate if the designated constraints aren't met. +type MediaMetricsDailyInfoValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e MediaMetricsDailyInfoValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e MediaMetricsDailyInfoValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e MediaMetricsDailyInfoValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e MediaMetricsDailyInfoValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e MediaMetricsDailyInfoValidationError) ErrorName() string { + return "MediaMetricsDailyInfoValidationError" +} + +// Error satisfies the builtin error interface +func (e MediaMetricsDailyInfoValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sMediaMetricsDailyInfo.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = MediaMetricsDailyInfoValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = MediaMetricsDailyInfoValidationError{} + +// Validate checks the field values on ListMediaMetricsDailyResp with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *ListMediaMetricsDailyResp) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ListMediaMetricsDailyResp with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ListMediaMetricsDailyRespMultiError, or nil if none found. +func (m *ListMediaMetricsDailyResp) ValidateAll() error { + return m.validate(true) +} + +func (m *ListMediaMetricsDailyResp) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + for idx, item := range m.GetData() { + _, _ = idx, item + + if all { + switch v := interface{}(item).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ListMediaMetricsDailyRespValidationError{ + field: fmt.Sprintf("Data[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ListMediaMetricsDailyRespValidationError{ + field: fmt.Sprintf("Data[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ListMediaMetricsDailyRespValidationError{ + field: fmt.Sprintf("Data[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + // no validation rules for Count + + if len(errors) > 0 { + return ListMediaMetricsDailyRespMultiError(errors) + } + + return nil +} + +// ListMediaMetricsDailyRespMultiError is an error wrapping multiple validation +// errors returned by ListMediaMetricsDailyResp.ValidateAll() if the +// designated constraints aren't met. +type ListMediaMetricsDailyRespMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ListMediaMetricsDailyRespMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ListMediaMetricsDailyRespMultiError) AllErrors() []error { return m } + +// ListMediaMetricsDailyRespValidationError is the validation error returned by +// ListMediaMetricsDailyResp.Validate if the designated constraints aren't met. +type ListMediaMetricsDailyRespValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ListMediaMetricsDailyRespValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ListMediaMetricsDailyRespValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ListMediaMetricsDailyRespValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ListMediaMetricsDailyRespValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ListMediaMetricsDailyRespValidationError) ErrorName() string { + return "ListMediaMetricsDailyRespValidationError" +} + +// Error satisfies the builtin error interface +func (e ListMediaMetricsDailyRespValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sListMediaMetricsDailyResp.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ListMediaMetricsDailyRespValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ListMediaMetricsDailyRespValidationError{} + +// Validate checks the field values on ListWorkMetricsDailyReq with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *ListWorkMetricsDailyReq) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ListWorkMetricsDailyReq with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ListWorkMetricsDailyReqMultiError, or nil if none found. +func (m *ListWorkMetricsDailyReq) ValidateAll() error { + return m.validate(true) +} + +func (m *ListWorkMetricsDailyReq) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for IsSuccess + + // no validation rules for FailType + + // no validation rules for Page + + // no validation rules for PageSize + + // no validation rules for Date + + if len(errors) > 0 { + return ListWorkMetricsDailyReqMultiError(errors) + } + + return nil +} + +// ListWorkMetricsDailyReqMultiError is an error wrapping multiple validation +// errors returned by ListWorkMetricsDailyReq.ValidateAll() if the designated +// constraints aren't met. +type ListWorkMetricsDailyReqMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ListWorkMetricsDailyReqMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ListWorkMetricsDailyReqMultiError) AllErrors() []error { return m } + +// ListWorkMetricsDailyReqValidationError is the validation error returned by +// ListWorkMetricsDailyReq.Validate if the designated constraints aren't met. +type ListWorkMetricsDailyReqValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ListWorkMetricsDailyReqValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ListWorkMetricsDailyReqValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ListWorkMetricsDailyReqValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ListWorkMetricsDailyReqValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ListWorkMetricsDailyReqValidationError) ErrorName() string { + return "ListWorkMetricsDailyReqValidationError" +} + +// Error satisfies the builtin error interface +func (e ListWorkMetricsDailyReqValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sListWorkMetricsDailyReq.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ListWorkMetricsDailyReqValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ListWorkMetricsDailyReqValidationError{} + +// Validate checks the field values on WorkMetricsDailyInfo with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *WorkMetricsDailyInfo) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on WorkMetricsDailyInfo with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// WorkMetricsDailyInfoMultiError, or nil if none found. +func (m *WorkMetricsDailyInfo) ValidateAll() error { + return m.validate(true) +} + +func (m *WorkMetricsDailyInfo) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Uuid + + // no validation rules for WorkUuid + + // no validation rules for ArtistUuid + + // no validation rules for MediaAccUserID + + // no validation rules for MediaName + + // no validation rules for ArtistName + + // no validation rules for ArtistPhone + + // no validation rules for PlatformID + + // no validation rules for Date + + // no validation rules for ViewsCount + + // no validation rules for LikesCount + + // no validation rules for CommentsCount + + // no validation rules for SharesCount + + // no validation rules for PublishMediaID + + // no validation rules for ProfileKey + + // no validation rules for IsSuccess + + // no validation rules for FailReason + + // no validation rules for FailType + + // no validation rules for CreatedAt + + // no validation rules for UpdatedAt + + if len(errors) > 0 { + return WorkMetricsDailyInfoMultiError(errors) + } + + return nil +} + +// WorkMetricsDailyInfoMultiError is an error wrapping multiple validation +// errors returned by WorkMetricsDailyInfo.ValidateAll() if the designated +// constraints aren't met. +type WorkMetricsDailyInfoMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m WorkMetricsDailyInfoMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m WorkMetricsDailyInfoMultiError) AllErrors() []error { return m } + +// WorkMetricsDailyInfoValidationError is the validation error returned by +// WorkMetricsDailyInfo.Validate if the designated constraints aren't met. +type WorkMetricsDailyInfoValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e WorkMetricsDailyInfoValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e WorkMetricsDailyInfoValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e WorkMetricsDailyInfoValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e WorkMetricsDailyInfoValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e WorkMetricsDailyInfoValidationError) ErrorName() string { + return "WorkMetricsDailyInfoValidationError" +} + +// Error satisfies the builtin error interface +func (e WorkMetricsDailyInfoValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sWorkMetricsDailyInfo.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = WorkMetricsDailyInfoValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = WorkMetricsDailyInfoValidationError{} + +// Validate checks the field values on ListWorkMetricsDailyResp with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *ListWorkMetricsDailyResp) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ListWorkMetricsDailyResp with the +// rules defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ListWorkMetricsDailyRespMultiError, or nil if none found. +func (m *ListWorkMetricsDailyResp) ValidateAll() error { + return m.validate(true) +} + +func (m *ListWorkMetricsDailyResp) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + for idx, item := range m.GetData() { + _, _ = idx, item + + if all { + switch v := interface{}(item).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ListWorkMetricsDailyRespValidationError{ + field: fmt.Sprintf("Data[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ListWorkMetricsDailyRespValidationError{ + field: fmt.Sprintf("Data[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ListWorkMetricsDailyRespValidationError{ + field: fmt.Sprintf("Data[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + // no validation rules for Count + + if len(errors) > 0 { + return ListWorkMetricsDailyRespMultiError(errors) + } + + return nil +} + +// ListWorkMetricsDailyRespMultiError is an error wrapping multiple validation +// errors returned by ListWorkMetricsDailyResp.ValidateAll() if the designated +// constraints aren't met. +type ListWorkMetricsDailyRespMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ListWorkMetricsDailyRespMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ListWorkMetricsDailyRespMultiError) AllErrors() []error { return m } + +// ListWorkMetricsDailyRespValidationError is the validation error returned by +// ListWorkMetricsDailyResp.Validate if the designated constraints aren't met. +type ListWorkMetricsDailyRespValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ListWorkMetricsDailyRespValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ListWorkMetricsDailyRespValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ListWorkMetricsDailyRespValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ListWorkMetricsDailyRespValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ListWorkMetricsDailyRespValidationError) ErrorName() string { + return "ListWorkMetricsDailyRespValidationError" +} + +// Error satisfies the builtin error interface +func (e ListWorkMetricsDailyRespValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sListWorkMetricsDailyResp.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ListWorkMetricsDailyRespValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ListWorkMetricsDailyRespValidationError{} + +// Validate checks the field values on UpsertTaskListReq with the rules defined +// in the proto definition for this message. If any rules are violated, the +// first error encountered is returned, or nil if there are no violations. +func (m *UpsertTaskListReq) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on UpsertTaskListReq with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// UpsertTaskListReqMultiError, or nil if none found. +func (m *UpsertTaskListReq) ValidateAll() error { + return m.validate(true) +} + +func (m *UpsertTaskListReq) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Uuid + + // no validation rules for Action + + // no validation rules for Url + + // no validation rules for Status + + // no validation rules for OperatorID + + // no validation rules for OperatorName + + if len(errors) > 0 { + return UpsertTaskListReqMultiError(errors) + } + + return nil +} + +// UpsertTaskListReqMultiError is an error wrapping multiple validation errors +// returned by UpsertTaskListReq.ValidateAll() if the designated constraints +// aren't met. +type UpsertTaskListReqMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m UpsertTaskListReqMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m UpsertTaskListReqMultiError) AllErrors() []error { return m } + +// UpsertTaskListReqValidationError is the validation error returned by +// UpsertTaskListReq.Validate if the designated constraints aren't met. +type UpsertTaskListReqValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e UpsertTaskListReqValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e UpsertTaskListReqValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e UpsertTaskListReqValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e UpsertTaskListReqValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e UpsertTaskListReqValidationError) ErrorName() string { + return "UpsertTaskListReqValidationError" +} + +// Error satisfies the builtin error interface +func (e UpsertTaskListReqValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sUpsertTaskListReq.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = UpsertTaskListReqValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = UpsertTaskListReqValidationError{} + +// Validate checks the field values on UpsertTaskListResp with the rules +// defined in the proto definition for this message. If any rules are +// violated, the first error encountered is returned, or nil if there are no violations. +func (m *UpsertTaskListResp) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on UpsertTaskListResp with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// UpsertTaskListRespMultiError, or nil if none found. +func (m *UpsertTaskListResp) ValidateAll() error { + return m.validate(true) +} + +func (m *UpsertTaskListResp) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Uuid + + // no validation rules for Msg + + if len(errors) > 0 { + return UpsertTaskListRespMultiError(errors) + } + + return nil +} + +// UpsertTaskListRespMultiError is an error wrapping multiple validation errors +// returned by UpsertTaskListResp.ValidateAll() if the designated constraints +// aren't met. +type UpsertTaskListRespMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m UpsertTaskListRespMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m UpsertTaskListRespMultiError) AllErrors() []error { return m } + +// UpsertTaskListRespValidationError is the validation error returned by +// UpsertTaskListResp.Validate if the designated constraints aren't met. +type UpsertTaskListRespValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e UpsertTaskListRespValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e UpsertTaskListRespValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e UpsertTaskListRespValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e UpsertTaskListRespValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e UpsertTaskListRespValidationError) ErrorName() string { + return "UpsertTaskListRespValidationError" +} + +// Error satisfies the builtin error interface +func (e UpsertTaskListRespValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sUpsertTaskListResp.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = UpsertTaskListRespValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = UpsertTaskListRespValidationError{} + +// Validate checks the field values on GetTaskListReq with the rules defined in +// the proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *GetTaskListReq) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on GetTaskListReq with the rules defined +// in the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in GetTaskListReqMultiError, +// or nil if none found. +func (m *GetTaskListReq) ValidateAll() error { + return m.validate(true) +} + +func (m *GetTaskListReq) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Uuid + + if len(errors) > 0 { + return GetTaskListReqMultiError(errors) + } + + return nil +} + +// GetTaskListReqMultiError is an error wrapping multiple validation errors +// returned by GetTaskListReq.ValidateAll() if the designated constraints +// aren't met. +type GetTaskListReqMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m GetTaskListReqMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m GetTaskListReqMultiError) AllErrors() []error { return m } + +// GetTaskListReqValidationError is the validation error returned by +// GetTaskListReq.Validate if the designated constraints aren't met. +type GetTaskListReqValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e GetTaskListReqValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e GetTaskListReqValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e GetTaskListReqValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e GetTaskListReqValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e GetTaskListReqValidationError) ErrorName() string { return "GetTaskListReqValidationError" } + +// Error satisfies the builtin error interface +func (e GetTaskListReqValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sGetTaskListReq.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = GetTaskListReqValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = GetTaskListReqValidationError{} + +// Validate checks the field values on TaskListInfo with the rules defined in +// the proto definition for this message. If any rules are violated, the first +// error encountered is returned, or nil if there are no violations. +func (m *TaskListInfo) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on TaskListInfo with the rules defined +// in the proto definition for this message. If any rules are violated, the +// result is a list of violation errors wrapped in TaskListInfoMultiError, or +// nil if none found. +func (m *TaskListInfo) ValidateAll() error { + return m.validate(true) +} + +func (m *TaskListInfo) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Uuid + + // no validation rules for Action + + // no validation rules for Url + + // no validation rules for Status + + // no validation rules for OperatorID + + // no validation rules for OperatorName + + // no validation rules for CreatedAt + + // no validation rules for UpdatedAt + + if len(errors) > 0 { + return TaskListInfoMultiError(errors) + } + + return nil +} + +// TaskListInfoMultiError is an error wrapping multiple validation errors +// returned by TaskListInfo.ValidateAll() if the designated constraints aren't met. +type TaskListInfoMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m TaskListInfoMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m TaskListInfoMultiError) AllErrors() []error { return m } + +// TaskListInfoValidationError is the validation error returned by +// TaskListInfo.Validate if the designated constraints aren't met. +type TaskListInfoValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e TaskListInfoValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e TaskListInfoValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e TaskListInfoValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e TaskListInfoValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e TaskListInfoValidationError) ErrorName() string { return "TaskListInfoValidationError" } + +// Error satisfies the builtin error interface +func (e TaskListInfoValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sTaskListInfo.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = TaskListInfoValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = TaskListInfoValidationError{} + +// Validate checks the field values on GetTaskListResp with the rules defined +// in the proto definition for this message. If any rules are violated, the +// first error encountered is returned, or nil if there are no violations. +func (m *GetTaskListResp) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on GetTaskListResp with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// GetTaskListRespMultiError, or nil if none found. +func (m *GetTaskListResp) ValidateAll() error { + return m.validate(true) +} + +func (m *GetTaskListResp) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + if all { + switch v := interface{}(m.GetData()).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, GetTaskListRespValidationError{ + field: "Data", + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, GetTaskListRespValidationError{ + field: "Data", + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(m.GetData()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return GetTaskListRespValidationError{ + field: "Data", + reason: "embedded message failed validation", + cause: err, + } + } + } + + // no validation rules for Msg + + if len(errors) > 0 { + return GetTaskListRespMultiError(errors) + } + + return nil +} + +// GetTaskListRespMultiError is an error wrapping multiple validation errors +// returned by GetTaskListResp.ValidateAll() if the designated constraints +// aren't met. +type GetTaskListRespMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m GetTaskListRespMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m GetTaskListRespMultiError) AllErrors() []error { return m } + +// GetTaskListRespValidationError is the validation error returned by +// GetTaskListResp.Validate if the designated constraints aren't met. +type GetTaskListRespValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e GetTaskListRespValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e GetTaskListRespValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e GetTaskListRespValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e GetTaskListRespValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e GetTaskListRespValidationError) ErrorName() string { return "GetTaskListRespValidationError" } + +// Error satisfies the builtin error interface +func (e GetTaskListRespValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sGetTaskListResp.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = GetTaskListRespValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = GetTaskListRespValidationError{} + +// Validate checks the field values on ListTaskListReq with the rules defined +// in the proto definition for this message. If any rules are violated, the +// first error encountered is returned, or nil if there are no violations. +func (m *ListTaskListReq) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ListTaskListReq with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ListTaskListReqMultiError, or nil if none found. +func (m *ListTaskListReq) ValidateAll() error { + return m.validate(true) +} + +func (m *ListTaskListReq) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Action + + // no validation rules for Status + + // no validation rules for OperatorID + + // no validation rules for Page + + // no validation rules for PageSize + + if len(errors) > 0 { + return ListTaskListReqMultiError(errors) + } + + return nil +} + +// ListTaskListReqMultiError is an error wrapping multiple validation errors +// returned by ListTaskListReq.ValidateAll() if the designated constraints +// aren't met. +type ListTaskListReqMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ListTaskListReqMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ListTaskListReqMultiError) AllErrors() []error { return m } + +// ListTaskListReqValidationError is the validation error returned by +// ListTaskListReq.Validate if the designated constraints aren't met. +type ListTaskListReqValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ListTaskListReqValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ListTaskListReqValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ListTaskListReqValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ListTaskListReqValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ListTaskListReqValidationError) ErrorName() string { return "ListTaskListReqValidationError" } + +// Error satisfies the builtin error interface +func (e ListTaskListReqValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sListTaskListReq.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ListTaskListReqValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ListTaskListReqValidationError{} + +// Validate checks the field values on ListTaskListResp with the rules defined +// in the proto definition for this message. If any rules are violated, the +// first error encountered is returned, or nil if there are no violations. +func (m *ListTaskListResp) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on ListTaskListResp with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// ListTaskListRespMultiError, or nil if none found. +func (m *ListTaskListResp) ValidateAll() error { + return m.validate(true) +} + +func (m *ListTaskListResp) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + for idx, item := range m.GetData() { + _, _ = idx, item + + if all { + switch v := interface{}(item).(type) { + case interface{ ValidateAll() error }: + if err := v.ValidateAll(); err != nil { + errors = append(errors, ListTaskListRespValidationError{ + field: fmt.Sprintf("Data[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + case interface{ Validate() error }: + if err := v.Validate(); err != nil { + errors = append(errors, ListTaskListRespValidationError{ + field: fmt.Sprintf("Data[%v]", idx), + reason: "embedded message failed validation", + cause: err, + }) + } + } + } else if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return ListTaskListRespValidationError{ + field: fmt.Sprintf("Data[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + // no validation rules for Count + + // no validation rules for Msg + + if len(errors) > 0 { + return ListTaskListRespMultiError(errors) + } + + return nil +} + +// ListTaskListRespMultiError is an error wrapping multiple validation errors +// returned by ListTaskListResp.ValidateAll() if the designated constraints +// aren't met. +type ListTaskListRespMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m ListTaskListRespMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m ListTaskListRespMultiError) AllErrors() []error { return m } + +// ListTaskListRespValidationError is the validation error returned by +// ListTaskListResp.Validate if the designated constraints aren't met. +type ListTaskListRespValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e ListTaskListRespValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e ListTaskListRespValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e ListTaskListRespValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e ListTaskListRespValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e ListTaskListRespValidationError) ErrorName() string { return "ListTaskListRespValidationError" } + +// Error satisfies the builtin error interface +func (e ListTaskListRespValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sListTaskListResp.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = ListTaskListRespValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = ListTaskListRespValidationError{} + +// Validate checks the field values on DeleteTaskListReq with the rules defined +// in the proto definition for this message. If any rules are violated, the +// first error encountered is returned, or nil if there are no violations. +func (m *DeleteTaskListReq) Validate() error { + return m.validate(false) +} + +// ValidateAll checks the field values on DeleteTaskListReq with the rules +// defined in the proto definition for this message. If any rules are +// violated, the result is a list of violation errors wrapped in +// DeleteTaskListReqMultiError, or nil if none found. +func (m *DeleteTaskListReq) ValidateAll() error { + return m.validate(true) +} + +func (m *DeleteTaskListReq) validate(all bool) error { + if m == nil { + return nil + } + + var errors []error + + // no validation rules for Uuid + + if len(errors) > 0 { + return DeleteTaskListReqMultiError(errors) + } + + return nil +} + +// DeleteTaskListReqMultiError is an error wrapping multiple validation errors +// returned by DeleteTaskListReq.ValidateAll() if the designated constraints +// aren't met. +type DeleteTaskListReqMultiError []error + +// Error returns a concatenation of all the error messages it wraps. +func (m DeleteTaskListReqMultiError) Error() string { + var msgs []string + for _, err := range m { + msgs = append(msgs, err.Error()) + } + return strings.Join(msgs, "; ") +} + +// AllErrors returns a list of validation violation errors. +func (m DeleteTaskListReqMultiError) AllErrors() []error { return m } + +// DeleteTaskListReqValidationError is the validation error returned by +// DeleteTaskListReq.Validate if the designated constraints aren't met. +type DeleteTaskListReqValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e DeleteTaskListReqValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e DeleteTaskListReqValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e DeleteTaskListReqValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e DeleteTaskListReqValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e DeleteTaskListReqValidationError) ErrorName() string { + return "DeleteTaskListReqValidationError" +} + +// Error satisfies the builtin error interface +func (e DeleteTaskListReqValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sDeleteTaskListReq.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = DeleteTaskListReqValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = DeleteTaskListReqValidationError{} + // Validate checks the field values on WorkListResp_Info with the rules defined // in the proto definition for this message. If any rules are violated, the // first error encountered is returned, or nil if there are no violations. @@ -17840,6 +19828,18 @@ func (m *WorkListResp_Info) validate(all bool) error { // no validation rules for ConfirmType + // no validation rules for Remark + + // no validation rules for Status1Time + + // no validation rules for Status4Time + + // no validation rules for Status9Time + + // no validation rules for Status6Time + + // no validation rules for PublishMediaIDs + // no validation rules for YoutubeStatus // no validation rules for BlueskyStatus diff --git a/api/cast/cast_triple.pb.go b/api/cast/cast_triple.pb.go index f940436..d45012c 100644 --- a/api/cast/cast_triple.pb.go +++ b/api/cast/cast_triple.pb.go @@ -57,7 +57,7 @@ type CastClient interface { UpdateOAuth(ctx context.Context, in *UpdateOAuthReq, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment) RefreshToken(ctx context.Context, in *RefreshTokenReq, opts ...grpc_go.CallOption) (*RefreshTokenResp, common.ErrorWithAttachment) PublishMediaInfo(ctx context.Context, in *PublishMediaInfoReq, opts ...grpc_go.CallOption) (*PublishMediaInfoResp, common.ErrorWithAttachment) - Test(ctx context.Context, in *emptypb.Empty, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment) + Tools(ctx context.Context, in *ToolsReq, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment) // 视频脚本相关接口 UpdateVideoScript(ctx context.Context, in *UpdateVideoScriptReq, opts ...grpc_go.CallOption) (*UpdateVideoScriptResp, common.ErrorWithAttachment) GetVideoScript(ctx context.Context, in *GetVideoScriptReq, opts ...grpc_go.CallOption) (*GetVideoScriptResp, common.ErrorWithAttachment) @@ -97,10 +97,18 @@ type CastClient interface { // 日级指标批量更新接口 UpsertMediaMetricsDailyBatch(ctx context.Context, in *UpsertMediaMetricsDailyBatchReq, opts ...grpc_go.CallOption) (*UpsertMediaMetricsDailyBatchResp, common.ErrorWithAttachment) UpsertWorkMetricsDailyBatch(ctx context.Context, in *UpsertWorkMetricsDailyBatchReq, opts ...grpc_go.CallOption) (*UpsertWorkMetricsDailyBatchResp, common.ErrorWithAttachment) + // 日级指标查询接口 + ListMediaMetricsDaily(ctx context.Context, in *ListMediaMetricsDailyReq, opts ...grpc_go.CallOption) (*ListMediaMetricsDailyResp, common.ErrorWithAttachment) + ListWorkMetricsDaily(ctx context.Context, in *ListWorkMetricsDailyReq, opts ...grpc_go.CallOption) (*ListWorkMetricsDailyResp, common.ErrorWithAttachment) // 艺人AyrShare信息相关接口 GetArtistAyrShareInfo(ctx context.Context, in *GetArtistAyrShareInfoReq, opts ...grpc_go.CallOption) (*GetArtistAyrShareInfoResp, common.ErrorWithAttachment) // 作品平台信息相关接口 ListWorkPlatformInfo(ctx context.Context, in *ListWorkPlatformInfoReq, opts ...grpc_go.CallOption) (*ListWorkPlatformInfoResp, common.ErrorWithAttachment) + // 任务列表相关接口 + UpsertTaskList(ctx context.Context, in *UpsertTaskListReq, opts ...grpc_go.CallOption) (*UpsertTaskListResp, common.ErrorWithAttachment) + GetTaskList(ctx context.Context, in *GetTaskListReq, opts ...grpc_go.CallOption) (*GetTaskListResp, common.ErrorWithAttachment) + ListTaskList(ctx context.Context, in *ListTaskListReq, opts ...grpc_go.CallOption) (*ListTaskListResp, common.ErrorWithAttachment) + DeleteTaskList(ctx context.Context, in *DeleteTaskListReq, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment) } type castClient struct { @@ -136,7 +144,7 @@ type CastClientImpl struct { UpdateOAuth func(ctx context.Context, in *UpdateOAuthReq) (*emptypb.Empty, error) RefreshToken func(ctx context.Context, in *RefreshTokenReq) (*RefreshTokenResp, error) PublishMediaInfo func(ctx context.Context, in *PublishMediaInfoReq) (*PublishMediaInfoResp, error) - Test func(ctx context.Context, in *emptypb.Empty) (*emptypb.Empty, error) + Tools func(ctx context.Context, in *ToolsReq) (*emptypb.Empty, error) UpdateVideoScript func(ctx context.Context, in *UpdateVideoScriptReq) (*UpdateVideoScriptResp, error) GetVideoScript func(ctx context.Context, in *GetVideoScriptReq) (*GetVideoScriptResp, error) ListVideoScripts func(ctx context.Context, in *ListVideoScriptsReq) (*ListVideoScriptsResp, error) @@ -168,8 +176,14 @@ type CastClientImpl struct { TobeConfirmedList func(ctx context.Context, in *TobeConfirmedListReq) (*TobeConfirmedListResp, error) UpsertMediaMetricsDailyBatch func(ctx context.Context, in *UpsertMediaMetricsDailyBatchReq) (*UpsertMediaMetricsDailyBatchResp, error) UpsertWorkMetricsDailyBatch func(ctx context.Context, in *UpsertWorkMetricsDailyBatchReq) (*UpsertWorkMetricsDailyBatchResp, error) + ListMediaMetricsDaily func(ctx context.Context, in *ListMediaMetricsDailyReq) (*ListMediaMetricsDailyResp, error) + ListWorkMetricsDaily func(ctx context.Context, in *ListWorkMetricsDailyReq) (*ListWorkMetricsDailyResp, error) GetArtistAyrShareInfo func(ctx context.Context, in *GetArtistAyrShareInfoReq) (*GetArtistAyrShareInfoResp, error) ListWorkPlatformInfo func(ctx context.Context, in *ListWorkPlatformInfoReq) (*ListWorkPlatformInfoResp, error) + UpsertTaskList func(ctx context.Context, in *UpsertTaskListReq) (*UpsertTaskListResp, error) + GetTaskList func(ctx context.Context, in *GetTaskListReq) (*GetTaskListResp, error) + ListTaskList func(ctx context.Context, in *ListTaskListReq) (*ListTaskListResp, error) + DeleteTaskList func(ctx context.Context, in *DeleteTaskListReq) (*emptypb.Empty, error) } func (c *CastClientImpl) GetDubboStub(cc *triple.TripleConn) CastClient { @@ -352,10 +366,10 @@ func (c *castClient) PublishMediaInfo(ctx context.Context, in *PublishMediaInfoR return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/PublishMediaInfo", in, out) } -func (c *castClient) Test(ctx context.Context, in *emptypb.Empty, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment) { +func (c *castClient) Tools(ctx context.Context, in *ToolsReq, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment) { out := new(emptypb.Empty) interfaceKey := ctx.Value(constant.InterfaceKey).(string) - return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/Test", in, out) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/Tools", in, out) } func (c *castClient) UpdateVideoScript(ctx context.Context, in *UpdateVideoScriptReq, opts ...grpc_go.CallOption) (*UpdateVideoScriptResp, common.ErrorWithAttachment) { @@ -544,6 +558,18 @@ func (c *castClient) UpsertWorkMetricsDailyBatch(ctx context.Context, in *Upsert return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpsertWorkMetricsDailyBatch", in, out) } +func (c *castClient) ListMediaMetricsDaily(ctx context.Context, in *ListMediaMetricsDailyReq, opts ...grpc_go.CallOption) (*ListMediaMetricsDailyResp, common.ErrorWithAttachment) { + out := new(ListMediaMetricsDailyResp) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/ListMediaMetricsDaily", in, out) +} + +func (c *castClient) ListWorkMetricsDaily(ctx context.Context, in *ListWorkMetricsDailyReq, opts ...grpc_go.CallOption) (*ListWorkMetricsDailyResp, common.ErrorWithAttachment) { + out := new(ListWorkMetricsDailyResp) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/ListWorkMetricsDaily", in, out) +} + func (c *castClient) GetArtistAyrShareInfo(ctx context.Context, in *GetArtistAyrShareInfoReq, opts ...grpc_go.CallOption) (*GetArtistAyrShareInfoResp, common.ErrorWithAttachment) { out := new(GetArtistAyrShareInfoResp) interfaceKey := ctx.Value(constant.InterfaceKey).(string) @@ -556,6 +582,30 @@ func (c *castClient) ListWorkPlatformInfo(ctx context.Context, in *ListWorkPlatf return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/ListWorkPlatformInfo", in, out) } +func (c *castClient) UpsertTaskList(ctx context.Context, in *UpsertTaskListReq, opts ...grpc_go.CallOption) (*UpsertTaskListResp, common.ErrorWithAttachment) { + out := new(UpsertTaskListResp) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpsertTaskList", in, out) +} + +func (c *castClient) GetTaskList(ctx context.Context, in *GetTaskListReq, opts ...grpc_go.CallOption) (*GetTaskListResp, common.ErrorWithAttachment) { + out := new(GetTaskListResp) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetTaskList", in, out) +} + +func (c *castClient) ListTaskList(ctx context.Context, in *ListTaskListReq, opts ...grpc_go.CallOption) (*ListTaskListResp, common.ErrorWithAttachment) { + out := new(ListTaskListResp) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/ListTaskList", in, out) +} + +func (c *castClient) DeleteTaskList(ctx context.Context, in *DeleteTaskListReq, opts ...grpc_go.CallOption) (*emptypb.Empty, common.ErrorWithAttachment) { + out := new(emptypb.Empty) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/DeleteTaskList", in, out) +} + // CastServer is the server API for Cast service. // All implementations must embed UnimplementedCastServer // for forward compatibility @@ -588,7 +638,7 @@ type CastServer interface { UpdateOAuth(context.Context, *UpdateOAuthReq) (*emptypb.Empty, error) RefreshToken(context.Context, *RefreshTokenReq) (*RefreshTokenResp, error) PublishMediaInfo(context.Context, *PublishMediaInfoReq) (*PublishMediaInfoResp, error) - Test(context.Context, *emptypb.Empty) (*emptypb.Empty, error) + Tools(context.Context, *ToolsReq) (*emptypb.Empty, error) // 视频脚本相关接口 UpdateVideoScript(context.Context, *UpdateVideoScriptReq) (*UpdateVideoScriptResp, error) GetVideoScript(context.Context, *GetVideoScriptReq) (*GetVideoScriptResp, error) @@ -628,10 +678,18 @@ type CastServer interface { // 日级指标批量更新接口 UpsertMediaMetricsDailyBatch(context.Context, *UpsertMediaMetricsDailyBatchReq) (*UpsertMediaMetricsDailyBatchResp, error) UpsertWorkMetricsDailyBatch(context.Context, *UpsertWorkMetricsDailyBatchReq) (*UpsertWorkMetricsDailyBatchResp, error) + // 日级指标查询接口 + ListMediaMetricsDaily(context.Context, *ListMediaMetricsDailyReq) (*ListMediaMetricsDailyResp, error) + ListWorkMetricsDaily(context.Context, *ListWorkMetricsDailyReq) (*ListWorkMetricsDailyResp, error) // 艺人AyrShare信息相关接口 GetArtistAyrShareInfo(context.Context, *GetArtistAyrShareInfoReq) (*GetArtistAyrShareInfoResp, error) // 作品平台信息相关接口 ListWorkPlatformInfo(context.Context, *ListWorkPlatformInfoReq) (*ListWorkPlatformInfoResp, error) + // 任务列表相关接口 + UpsertTaskList(context.Context, *UpsertTaskListReq) (*UpsertTaskListResp, error) + GetTaskList(context.Context, *GetTaskListReq) (*GetTaskListResp, error) + ListTaskList(context.Context, *ListTaskListReq) (*ListTaskListResp, error) + DeleteTaskList(context.Context, *DeleteTaskListReq) (*emptypb.Empty, error) mustEmbedUnimplementedCastServer() } @@ -724,8 +782,8 @@ func (UnimplementedCastServer) RefreshToken(context.Context, *RefreshTokenReq) ( func (UnimplementedCastServer) PublishMediaInfo(context.Context, *PublishMediaInfoReq) (*PublishMediaInfoResp, error) { return nil, status.Errorf(codes.Unimplemented, "method PublishMediaInfo not implemented") } -func (UnimplementedCastServer) Test(context.Context, *emptypb.Empty) (*emptypb.Empty, error) { - return nil, status.Errorf(codes.Unimplemented, "method Test not implemented") +func (UnimplementedCastServer) Tools(context.Context, *ToolsReq) (*emptypb.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method Tools not implemented") } func (UnimplementedCastServer) UpdateVideoScript(context.Context, *UpdateVideoScriptReq) (*UpdateVideoScriptResp, error) { return nil, status.Errorf(codes.Unimplemented, "method UpdateVideoScript not implemented") @@ -820,12 +878,30 @@ func (UnimplementedCastServer) UpsertMediaMetricsDailyBatch(context.Context, *Up func (UnimplementedCastServer) UpsertWorkMetricsDailyBatch(context.Context, *UpsertWorkMetricsDailyBatchReq) (*UpsertWorkMetricsDailyBatchResp, error) { return nil, status.Errorf(codes.Unimplemented, "method UpsertWorkMetricsDailyBatch not implemented") } +func (UnimplementedCastServer) ListMediaMetricsDaily(context.Context, *ListMediaMetricsDailyReq) (*ListMediaMetricsDailyResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListMediaMetricsDaily not implemented") +} +func (UnimplementedCastServer) ListWorkMetricsDaily(context.Context, *ListWorkMetricsDailyReq) (*ListWorkMetricsDailyResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListWorkMetricsDaily not implemented") +} func (UnimplementedCastServer) GetArtistAyrShareInfo(context.Context, *GetArtistAyrShareInfoReq) (*GetArtistAyrShareInfoResp, error) { return nil, status.Errorf(codes.Unimplemented, "method GetArtistAyrShareInfo not implemented") } func (UnimplementedCastServer) ListWorkPlatformInfo(context.Context, *ListWorkPlatformInfoReq) (*ListWorkPlatformInfoResp, error) { return nil, status.Errorf(codes.Unimplemented, "method ListWorkPlatformInfo not implemented") } +func (UnimplementedCastServer) UpsertTaskList(context.Context, *UpsertTaskListReq) (*UpsertTaskListResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpsertTaskList not implemented") +} +func (UnimplementedCastServer) GetTaskList(context.Context, *GetTaskListReq) (*GetTaskListResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetTaskList not implemented") +} +func (UnimplementedCastServer) ListTaskList(context.Context, *ListTaskListReq) (*ListTaskListResp, error) { + return nil, status.Errorf(codes.Unimplemented, "method ListTaskList not implemented") +} +func (UnimplementedCastServer) DeleteTaskList(context.Context, *DeleteTaskListReq) (*emptypb.Empty, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteTaskList not implemented") +} func (s *UnimplementedCastServer) XXX_SetProxyImpl(impl protocol.Invoker) { s.proxyImpl = impl } @@ -1666,8 +1742,8 @@ func _Cast_PublishMediaInfo_Handler(srv interface{}, ctx context.Context, dec fu return interceptor(ctx, in, info, handler) } -func _Cast_Test_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { - in := new(emptypb.Empty) +func _Cast_Tools_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(ToolsReq) if err := dec(in); err != nil { return nil, err } @@ -1679,7 +1755,7 @@ func _Cast_Test_Handler(srv interface{}, ctx context.Context, dec func(interface for k, v := range md { invAttachment[k] = v } - invo := invocation.NewRPCInvocation("Test", args, invAttachment) + invo := invocation.NewRPCInvocation("Tools", args, invAttachment) if interceptor == nil { result := base.XXX_GetProxyImpl().Invoke(ctx, invo) return result, result.Error() @@ -2594,6 +2670,64 @@ func _Cast_UpsertWorkMetricsDailyBatch_Handler(srv interface{}, ctx context.Cont return interceptor(ctx, in, info, handler) } +func _Cast_ListMediaMetricsDaily_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(ListMediaMetricsDailyReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("ListMediaMetricsDaily", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Cast_ListWorkMetricsDaily_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(ListWorkMetricsDailyReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("ListWorkMetricsDaily", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + func _Cast_GetArtistAyrShareInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { in := new(GetArtistAyrShareInfoReq) if err := dec(in); err != nil { @@ -2652,6 +2786,122 @@ func _Cast_ListWorkPlatformInfo_Handler(srv interface{}, ctx context.Context, de return interceptor(ctx, in, info, handler) } +func _Cast_UpsertTaskList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(UpsertTaskListReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("UpsertTaskList", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Cast_GetTaskList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(GetTaskListReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("GetTaskList", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Cast_ListTaskList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(ListTaskListReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("ListTaskList", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _Cast_DeleteTaskList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteTaskListReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("DeleteTaskList", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + // Cast_ServiceDesc is the grpc_go.ServiceDesc for Cast service. // It's only intended for direct use with grpc_go.RegisterService, // and not to be introspected or modified (even as a copy) @@ -2772,8 +3022,8 @@ var Cast_ServiceDesc = grpc_go.ServiceDesc{ Handler: _Cast_PublishMediaInfo_Handler, }, { - MethodName: "Test", - Handler: _Cast_Test_Handler, + MethodName: "Tools", + Handler: _Cast_Tools_Handler, }, { MethodName: "UpdateVideoScript", @@ -2899,6 +3149,14 @@ var Cast_ServiceDesc = grpc_go.ServiceDesc{ MethodName: "UpsertWorkMetricsDailyBatch", Handler: _Cast_UpsertWorkMetricsDailyBatch_Handler, }, + { + MethodName: "ListMediaMetricsDaily", + Handler: _Cast_ListMediaMetricsDaily_Handler, + }, + { + MethodName: "ListWorkMetricsDaily", + Handler: _Cast_ListWorkMetricsDaily_Handler, + }, { MethodName: "GetArtistAyrShareInfo", Handler: _Cast_GetArtistAyrShareInfo_Handler, @@ -2907,6 +3165,22 @@ var Cast_ServiceDesc = grpc_go.ServiceDesc{ MethodName: "ListWorkPlatformInfo", Handler: _Cast_ListWorkPlatformInfo_Handler, }, + { + MethodName: "UpsertTaskList", + Handler: _Cast_UpsertTaskList_Handler, + }, + { + MethodName: "GetTaskList", + Handler: _Cast_GetTaskList_Handler, + }, + { + MethodName: "ListTaskList", + Handler: _Cast_ListTaskList_Handler, + }, + { + MethodName: "DeleteTaskList", + Handler: _Cast_DeleteTaskList_Handler, + }, }, Streams: []grpc_go.StreamDesc{}, Metadata: "pb/fiee/cast.proto", From 6f9c9c5faf37a3dba3441ccb262d104b64365525 Mon Sep 17 00:00:00 2001 From: cjy Date: Tue, 23 Dec 2025 13:52:32 +0800 Subject: [PATCH 05/19] =?UTF-8?q?feat:=20=E6=89=B9=E9=87=8F=E5=AF=BC?= =?UTF-8?q?=E5=85=A5=E5=9B=BE=E6=96=87=E5=A2=9E=E5=8A=A0=E4=B8=A4=E4=B8=AA?= =?UTF-8?q?=E5=B9=B3=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/图文导入模板_old.xlsx | Bin 0 -> 11917 bytes pkg/service/cast/work.go | 66 ++++++++++++++++++++++++++++++++----- 2 files changed, 58 insertions(+), 8 deletions(-) create mode 100644 data/图文导入模板_old.xlsx diff --git a/data/图文导入模板_old.xlsx b/data/图文导入模板_old.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..bc9c96508611f62155ee973ecc1e94dabed9dd30 GIT binary patch literal 11917 zcma)i1yo(h(k|}q?(Xgo2<{pj0t9z=39iB2-7UDgTae%o+=B+!2g%H2hCBEEug_YX zeb^;?e_dT&T~%_Dz#vcnFC$Q9o&V+g&jI;-p>Op;&eqD>j$ZDW4CVPB5I@Pn>c4Za z0|Ee;0s#OZ{GCkK+M3SU!aOZ{R05b0#sA9Z7@^8)3LlX&iP9&i8LnoZ%kZeiJBfs3 zHtRxdsR6+qSf%ZgPlPU+Hy7%11NT*W_gXWddz*#nq|c9`-LUXLVhMgpMXJ`Z-HUx& zYms2lEJ=B6Sj=Vbf*<$SLFi+u)`cB0a#_Luwi3!-oe)wP--~~+Oh!`UEhWW*@ ze$d3n*y96aITMt=v_5oMICCC^(x0l)o;1|4=1*@@rpLfmQ!_L)s3{pVlUC3qtAa>U zFRt#Pgq)lRV}Ed3+06I|Z3L;nubn}XI&}%oCQc}Gkg^19)5QlAnjK7R;a7Y)wu;D* zrB4NYbC~^I^iDl(a|#1uona1@BwPmvsT^fy75yC{&La@dA+TtGUy5}+HUQ4m&1LRH z^1TJ=3G@uoDqRR*IvsWNn1dADoK7*|H3^L;1LH=N6Yw&`yN3@n%Hvvk(G58&P z=bccDryPm+Jb0_RZe{qV<>2(XDr2F;$;Z2-+))KK$D$qHh%cOp^by4&Z5>={2S9m{ z0*J=i&_zz5uFIwCpdqP7>XpSaa+$~+H8fUMww4qXv^fXm30vP#?dtmZI~I#k8!O%b-|yY1f+#R1zC9_p zr10=qDi@B3aYangkj)3s?3znJ-Wad6?_0s%K|9o4CnS!l>#@y8Vx}P_(~0yzXMS&~ z@Djd({ikVPFFWoEJ)`dTj5_i^P z(4WSZu@r_xfM`vI?HM1PxOeUwrk!WEEz*CaP9f801b$m!F5>D$-sA#N3sao1cTdR- zbT9}UP-xngUWOh+ve$v4of;0kRt||0UuHDG1W|!pFyW(>SMiB$3gAPy10_Hot$MEuJe+Wq5}Y6{0Hq%7RH~`sH$a`!hzzklJo!% za|{UGAH4B-*#x&>aI$8Ztl34GzpfUr#|MY};lhm+P{apmOZQHPJ0T}0=g!}C2VZ-# z$AwH-T&>PJirp4BT9_t(-f`{G!OMZkAuW1?rVny>pv!|a?@ssT&gus+b@~u4;Syj# zsb&NB*pH;+go*InhI3UJCg&<$;SkPyHS-51dWi6?Y?f2siQN%d#!<~)25NJTIYU8W z+rexP38r!}sAwIy+hN?%;p9Woy7f?K_m9;xuIfni(=h??X^!W4EL5t4Y)hf4`_v}O zirUxc3!GDhf?qdEQP5@Y?m>d=IF^W|DZJwP%Rmu5H#u?Oz7f*5Qj{pw;P{PsbgA4$ zSDz!K7RVVmKWa_}2!u48!-I@EngsgF6(;ziVhO~v3(T`x@Xo1q zF>Zty0XGKr8@YRLG&t6e<*rt1vqgBv1~U8R4FUs@V4OigcCydnJxDr!vgCP0D_Z2e z^b(DFg5K>5pj_ z81IqF)j+QK%qxJ*E-jD((89gyohfh4mJU>d1PE6&DKZmUp&(6GTiCqSq5}@@ic}h4 z37KIE9XB^gfW&Tm$+ummxUFih$^tFKE9|qClkKh3m5o&TWq4xAD_}C1s;7VsXfNm; zI^u57Fr8j0@r+haQFy~X5gFII9lA|EaXIRGi^GB)uFaINltT}`R*!!;L^Fgw$Au(( z&&j?8e2?|PEMCystQ9Xp_vaNif&inZ@7@^Y4->$Q?ryWdjHzxbz?`nLfnTl8+D(eB zNH|srcGjxJPdXs_3h;su!`{L7K=f@bMwZkQW~>BgQbW|#Zv=-GuAK9S6$U~9E#D33 z2|X+l2tkWXnFabH0>Sy%5Uxxe>Zm)GAXs0x&bL{{=`IlZ&3?RDI5P9fa@IPB^a(Jo z)o!6JxlkBKH`s;pN&g@W(U2_ng8^j7w6($L3Kv4aKn)RsfFbB=pOHDdw>>X}J0(wgb3zYv02 z`nFRsXoWPe(Jj5Oi{z7*(kLsejv12+12|CrsWH}Dd*)ICqa`N+6u4E2+(VQe8q76G z<~CfL&AxtC{2hJuk3D{sN%42^Rm8Zv^jt;zWRAJ@m4UKLMR_{C{IqB6< z#?yF$2U(v7cDyh*Ms|9TcrktYElaP)dXA1e*QrfsuhB~!@p)7|%Fx+_BHLBJLE!B7)xwI=`%f*qk_}%+V zi&RaDrMI*y$&>yG_@CP=tb_WOh3DGwRK^AiPcP`FiO2V9YJUoEvznC(eT3O7fl_KmC)TEJC&|+m2ea zEm)m>T$S{g*Ta(LvJIO2f`q9N;SN2*jo|5Nca@zkz6OB4P$lCIZFW04Q9LaMCh|_F zLat+{SgwV!&^e$!D+wm8p@}PTm{NR%-`xpbK#AGAu7x;oU^G!N0NSYYe&rjEiS!bu z(_#YdVuwjPG8vf_6a;dZ= zW8zOQ*ce05p&~QuAincKVIe1^8qA;`$l4)jcSJpVv)4AU#gw1MjZ&4CYJ@ z#L%q+*K8}WFOeNkrY_?Rwzu-{=C<8C3##$U?_i2eqNLo?Mz+b5JU)@k4}-N0jZCg>5gEs@ABl?)!B(HW5&~Rq6~1FFny_Nw&&wzPn{lHTg=+<(CF|r(sqT= zxJX!#u+@^=oa#*HyrR>IgmU}5A)Mkpn5+EBLun3=^lCKMs%MX!`VsJ-_OOT^{r3N` z2j+jX2dybK|FmEBAXxoB>|y8Xi%2y&ggmFl35_@>utt-_eEw>?XF0tkXDEdQX>GOK z33|}I=jo~7x5mm)S^y@ZIn@)ii4{o1VYINY;2%1a3e7qslWZ(Rw*XaG(P3x_Ca$zU z?VF-tv84>hJd85@*Nw^lT65-aqZ3{tErY9+dyX9(+S$zzo=d ztQ#YCM)9Ui@i)oo&|LBgD_SvCKQ^sqR6kmaU6*BslAFzN>l`eV z!@HM3rC%D4%UxFML~F}df|P+ng?h<+To=>atT+g6!{ZSIqAuLh-k97IeW$B&!kICK zr+EdcG)0tjN!6H&YjDXLtxu1AO(vLQu8(DUOCxP*nCj1Hw3PWHc5Hrz(7{NxZc~n6 zCwGu$*m7$AT+>dOJJ2c+?#cq-D&1v|(ERIrQ|dtnfhbvUH?*bZj{;QRd&AMoz{z6N zSuf>v-6EIRW7-h=Gt5un|9d3(asYjf1nrFtEDTed@P38(Kv~_I zhRf)uOF~x#Q*dH2;_O4xayB>?l*2rpGM;9OGVO>YG|3<)4`h0re%|%qKL!WdTZCe& zBjzG&(nH-bQIpFT+Gs3~mrAq%A#fFxc5w=f35Eg*iI1h5>$Nua7>8Sv04?7rFcW>S z|DG-ZIxOFSmplU|M4UR#G|y3PcNTzZ)+WuhV5SK5mIVMda5evP??j_UMNKm23{aA2 z#L<{#9Z{hb<)`8uM(zSzW!{+sM)`8U$vujCtYExyL2Q2-QT2}W0 zb(448aN53l5|evaTp>fXGOVKLk&HQk+Rm+t`*<~W*GQn|6oq;D7}ZLy!SR`QVNPo$ zZ{D2UA)s`NE~bAR zYx8#LjL4#s^UH0<5C1V+hfA< zo5!1iFZcWu*?GeBZO&&0)#UVT_nY-r_-?DJ8>?dm0p`@!RaA9Vgcqg+l zyZu2NNEBepc+W7ZF~dJ zRIyV-Jo+*j>}AVWZBviHbuqg9wkT#{jK;TI+?`5;(Q$+)iz3e0N0A2j;*&JvrL$86 z0(p7A{y>t>2h1g60c1ogv0MFB1QSYoF{FXvB_o2|h2YWCw9LW6F9&RV4pDLlL9SuP zANKuDv697Ouaz$4-yVL%C&au9`#yRz-sj-wCnd{ZAYkO@e=@kVxmpo-elX5=Z}KMp zM~|?rcs^g6Xb>azyy28`SoBEXVH8WaITTQGsoT~5kurn}I2ZoCKKm8IIq|DY z5o>I&0*lFLg8ktzH(M82=D_w=PF&*BW*B>ig7@Sk%L^@|Fvkmy#5}7#8a#p2qprwD zUUS)t#_{Pog&`ND`&xmXvsvBsZGu+CTV8GS^csxzCbgI>ix#anGWTxBj9E40J1F>& ztq*9Gw_!~Tg?{G($mrmoX#zyw^<^%1N^?-@lM&6bAPV$>;J|l(D*g)2C21MnzwNA6 ztde8Q=*<`1<>%TI%vVIG6h9Jdm!th5I~q_D+E<4dq2n?OG5$aVPX;__J&K7jq4J?J z*R&K0uyU6Clso;x(q^U#5mpFFnBRA>m*+dK_?(J zKfsW(yLceC>1z(KA$=Zf%8ypVMIvH^rx3?lD<6y!hmmG|_l;`fQD%Yzq{P^hmP7OF z_jWmUQrYDec}wpEI`~uPu)s;feAes+9qk{=-G=-r+B{s)VD^1hgqfz4RMRMdqCy>~ z?O1?mU!gTs-ch?;&rUg^bl#&ySs`x~PX3u-0m2^yf2?XjrN_>^d?)Kr+I z+wkNgKs0drQFj4v1tlXK!Hb^QQhM>oTPVBLp46A7YF?;}V6XYNIBdV;`Diy+e4M}j zZEn5m)PSz|LZMbnc+XZ}Tbms9ayl&pfTQ58ff108eC$W>g8}qy^I_kVgj7}EV09=9 zEUp7>d9wgm?AiXqw?o(sSJ5I9262W{h@jE^=K2AWuFFGa<%t^H+ar~`G}J}3dx@yS zYkG{!U5>-W!a=$h^<_+{APXJNVImw?0<6{>z%-|l_(aoXEqo1TEfd9YbdErdu_{1y zsUwWiYAq1C1`D=dSuNHGtUF;V%ogen`z1(Bp=+sa?hY&f=j3vW=NeI3&3=r5ZYrxm z3vTpY%2o?MmFYZzc7R=F4cDvqFr~L{vy!n@u#cK9!i;<{wP=)xL>mr60#L;E5u}p`fdbFk+5Q*?R!`qu`u9 zEp~#E+}G+N#tuYNo#Da;j3OOiM1~?*I0`>GI@i!(sG(S8asm=VOir-1WvZ?yHCx{P z%!%DNf+E*}N-<2reWgqi2;y-@a~O`PGTmYzH84%s#S&JQ3*cP&Ov;`alwyag1^mN0 zprZVa#QQwmojI#ElC<>U1L&KhDTmE_--q0>QS{rUy~Z|Eo2)`~W@ZnMd=75K0s6~} z&fcS)Epeu>_NkL&ZMR*Iek)CXtH911wFqtx_$xc#7|S^G}WgN*b!By7}ycj zpD9RO>KzX1lRGyI6!e8nIF^waxv2+C8n0CF@O)-syxdSM-vqL22o4%NdS!gIsTNnV znChYof!G?{uF|T|{nleW*lWm1WkY4j6h>Qvo8!0Y#AobmzkH#b*`Z=X*?8p?FoA3G z{-1OBKpznX@tltH2LS+p|DDj$v$8V#85%0dTct1{cxKc*eY{V{5Ho&@qTo+v9G7e= zQLXQmjKk1LH8*ogo$1w(2{!w9b2A&EPnTLODTm)_Fvlzx3 z(A{A=EUBnGmNm#h&;r0)anz>w?)MB8e(t
1~_Du6>ZbVe8@966x!g7OM*>_w5F z6V|chr4r)e*-R1+Q6FaOj;#eSL}9z7F4quDhV+_{P8%~d*-4_eg#>S?KIECsM}J5w z+$i0(QH?Xju#+0)p6yhDP#;l@pYq7@79KiFLK)v96;+mr)h3skBH<_I2nlHe<ifD@oB)Wqd>N*^4{H^!-0MtK3@mAnM&Ps_K`4xT zCp1qv#Xw-hbP5CN*)Q(|rCD3+to0BYHSax-c?SXNLvI9wbCbvsum*P6Cg{78bluhQJw2@=ryzAUCkB{L*X3kB%MRf>AuBOE!zGE9`96ys_Au%gt}hB1wlCZY zzU#!2=R|p8AcdnOuonHnvfqs{%!GZ}@c;@uUm^WTrP3L53Y)!LA!XAVKSK{dk^}}F8t6=#vRAV(AI`aVPnzF>)Vg?lvWRq zIfuMv$8jh33c`|<5Sn@IVJq%$x`L0F7Irygk`Lo&3-JeTj)Hu3cV`!A^j;>-_;}5i zWyFhcq&jOC*k|$>mvs_(o(BU*>JQTGMsC&x8{k^hep9QJUyniSrjLlT%QYrZ@)Y*f z!^x51G?r&*q?(jZE;H*V&YF3t?cs1{AtM;+)%NS^zVV#jcW_w?OzX-;aCYm4ILw-W zdafM%rF0Z;I&sMi%a{}@OL%+C3VbUX=3e}kY3A77_Vo;0doJ?RX0*^z%X~m+F%4o) ziYNBh24WBCrppVn*;wvL?A>cO?C}&(@p6l37B#kJcdN-yq?vN8tZO(7u zR2hpjO22-Uw$&vgJr^e>DoPph^Ee0Uf4IHa6TynPR~*ti?p;!JBIag3mX*&(5q2_a z-f&|XNQROZQE{xhI~H@IMV}PvMyzUL;@__5QNE< zw^kwZqy_RU_YG^SIyxBpgp0z3_CtFl)N@^On%Iw*HdY6N!rnF%N*R#|KWcj0s0QD# zepNhy_igb!?B}on~Vb%t3tMpxERRfKM}#$L<(MdCIw-1FnPh>d+Y5 zd7&Wpi4;dv_QqmAZ=n~S{iA%fGSQbU9uExF{^Eep5pxia6^8|}&~CEDPmF8ttAjW3 zgxGN^EZ{A64OGNtL*$*6x0noAQ!Z|!^-aj`X+>u~G2Lo}ml_(Zm>_w_;xLH9m((t4D+Pu7!VL|533KU&5p!&ckm!pOjT@kGoUYRDhaO#qc#pC|vMLhTL%Phu$L zJ@I9uF%X|P3kxwk8mvvTm_71ih=fV)CO*f$7??yoLa;#enci44{hYrk3BzhE% ztpo!b)`I2a@!2YNww%NAW?Ni_8lMHLjrJeXbTOROe zSVbWn^+6?>;7ikU){5<|m{63V`*4SeC8LFNQ zJEn58`ZNJ{3oRmzNDF}5`4K}NF=WCJWUaaZ=|GlV^Hp7;5eU2hJv_F_y-PIyEns{=Z;PoyB6c+PF787neagg}!$q`dCnc|SGRbi#cy7w~S42li; zWGjY8rzWOC!qCqFgyXVCp{hqg49Z*JLoE!)#8HsSQQ$JsoCl~~gl)GRL51^y!Lhn6 zu0ZYCOC5nlxVHuVXzd!-rZHP8_(5IkLZLZ%+Yt{0 z=$B#c$1VMx7ej!ywN&4=OzF@n`G+fbR)(x8wOkp{rkbuEvY2I2#gtOC_Y6v`Ka~kw zb-+or?1XHGG=AUIV-c~`rvH=#h8SA_OO(2rPu1P8X;=3VEcBGpv}tCzfC0YQ5UV?O zJ=p}N`or5#S)+*o8s!$MG?u!0qJ@O3jRaWP3e-b19af#Je%rc+unFU>dg|11CUStG zH3I%9DcNUwSrB%D;<r7?i3;6QgOb5Sc`j9M|7UfeRcR!y1v~$RD)mHIA{u^rCfZw^{9#%w}A47u#6#V z^`QjsIG=K zczq4XCA$dsm@{sHX~X4{%=bxZ95b_#DR_5;)cJx_xEP(C^IZmXTEybqS*Y;;M*jNL|z#B!&5)orXI) zv*TJAs1mmTAz*M*Nwj^BV8*^ky3*!Fp67JzFV_WD$_JYJOB`M|Vj0?HtAcotoO`3) z8R|Ht5}tKQRrb^J)trtv(s(i}D$0D(Vl zcRjT}56#GEe_Bk0(dmecs-Wv>?j+(gdh+CQeVj@Jcqc*y-hRVQxpRU4-Y4>O1)0z| zOvvQK%shsLSfu`#Y9%5s%LY2H$4W$60qFt*izOtJ<(f4GWz-8V^^Gg%<3)@r-2Rjz z)){RCBzqX&!{+z%&>#H;6)Rp>=FxZ;b(FlGm^upE*YCY}-?-4D1#z{-0_-;uXd8Wb zWV#)7+gQm6dvmQJ71)#wgF99kn+q>H_U2Yl%6q396DjNNOS&h_(5GYGt-LH$SrJXO zpa@1Za#C0*_q_m81%LU_pjCMV>JuEgoID0|M8pnCqV=^bs0}p4&KyL<2>7$J?OfD+Rv{aD2zs!i0|q9cl;~BjU1zhFK=#Fzb9nK&G{gv zV*81gQofI3%bj3h<5AX8A{*}>FzVg_50D08i*sk=$=A^&)*)sfAC&wAj^=(P&_OUo z4T;Uek@t}hzcCp^Dqn>HyN!3!-$L!>ibD^fB6KYg&UW(TBQ^)vTX#cO|Ee{{5@^Ph zJ=CE9(Q-N=%NIJl#sGvypi&arlCckHe5Ou_rE+XMhPqQ_AEkfYt{m0uAbZhd4UBCn zIL8Im0>nso0p_t70hmJAV@{_0ETcLAp*l%B%iMVr>+R-?BEY9g5y&X&6DWR~GpI^E zOo(4v`_0vY=A|m0HP{aSB3z5o=o`pm<{YnupD-djEkP4s!8@6*#eo~x2Lrx0z+uVGd_N$N(INOG#}=C?DsheJ zj3#1fb+OhebR7rgJr(KI(ymcbz&Dw%Nc4&xm=RXM+=I zzp5zzUJeI)4sPGu8koN>gS&A!wmd!GTX{Y?LH|WV_d;0~{Y9dO0io~s`M|r~ChdfZ zIB!o+^j%ut<71-K(>NJ&wAx`?tAISs*Cz0Yq?_%O6?gq+>}3LN#{BRW9|w6Keyah; zHu)2GXVqmNvC`IQU>7CpE|BK^Grc=M-))}Q1v-)_Eq8@+ra*4W7?X)TB{}{KZdTy} z&Nm;3ec4(q7S?=vb3eyZbOsQuPK8cLYg^x!#_2( z)72R@p;0p|#^pzveeguW)Zeoi@50CWUd;B4w#4cG%sBrWoWjmQ4tLKmetk|PU_F07 zClY>OetoP?J5 z%G*J@Ec9;rwWlYVwdKdJwd>fttYcJS*%%-TU2&hvP~Eq!BIpT%YH1w~Xs9qEbu!BE z9FONr;SvT|c!O8<#JzQo>J=1pE2mHz@hoxsfQx9DH)HsN1ZVymnnawAGjz!{VJJk=V;y)5zhO@Qr<*J4D@yYtoQPQ;xzG95~}4XWwT zAro?shKhrwEGkI~5!Cp`qSNxG~a;b zC1W(56q?0DQzL-r9eP0p-xZ57g%vEuDnOYVvpIUbe% z;D)R2=uo0{IaMCSW-NW!LXJI~Uo6!I7L7z8yT0$Kub=C-Q%C;Mr|i=_AAK5kXVheK zYlE#hjlfixy#9A^b2Tp75(J+b^C1)pHIy^C!bv&sfl9C;&hJg6F?w!qJL{unPW?ev^-eD?JJi{YOr{UG_< z*6{j4U+*C=ihiMlMfx|k|JYGp%XyvD{w-(X+0Xu4iu<*M*V(b(5{8~DsxK1$%9Z{9 zzq|KyXWldGpY_^*TFC2)?Qe~Re`ot$zkU74ud~3v1;nBK)cbeX{?|jl^bh_TFEgC@ zYli=}&HOLkmu>9Vc;S^M`%Cd3orwRw8eeZ~FA{#uyVrk_@M@ELjm7I0$KL{b{^NCi zi+U~PbuZ3uDZ0 5 { - temp.Title = utils.CleanString(row[5]) + + if len(row) > 7 { + temp.Title = utils.CleanString(row[7]) } - if len(row) > 6 { - temp.Content = utils.CleanString(row[6]) + if len(row) > 8 { + temp.Content = utils.CleanString(row[8]) } - // 图片 - for i := 8; i <= 18; i++ { + for i := 10; i <= 20; i++ { if len(row) > i { if utils.CleanString(row[i]) != "" { ok, _err := check.ImageCheckUrlValid(row[i]) @@ -1052,7 +1052,7 @@ func ImportWorkBatch(ctx *gin.Context) { break } if !ok { - temp.Remark = fmt.Sprintf("图片%d黄反审核未通过", i-7) + temp.Remark = fmt.Sprintf("图片%d黄反审核未通过", i-9) req.ImageWorks = append(req.ImageWorks, temp) break } @@ -1143,6 +1143,56 @@ func ImportWorkBatch(ctx *gin.Context) { temp.MediaAccountNames = append(temp.MediaAccountNames, utils.CleanString(row[4])) temp.MediaAccountUuids = append(temp.MediaAccountUuids, mediaInfoResp.Info.MediaAccountUuid)*/ } + // YouTube账号(第F列,row[5]) + if len(row) > 5 && utils.CleanString(row[5]) != "" { + mediaInfoResp, err = service.CastProvider.MediaInfo(context.Background(), &cast.MediaInfoReq{ + ArtistUuid: temp.ArtistUuid, + PlatformID: cast.PlatformIDENUM_YOUTUBE, + PlatformUserName: utils.CleanString(row[5]), + }) + if err != nil || mediaInfoResp.Info.MediaAccountUuid == "" { + temp.Remark = fmt.Sprintf("YouTube账号名不存在") + zap.L().Error("CastProvider.MediaInfo", zap.Error(err)) + req.ImageWorks = append(req.ImageWorks, temp) + continue + } + temp.PublishConfig1 = &cast.PublishConfig{ + ForbidComment: 1, + PublicType: 1, + CanJoin: 1, + CanQuote: 1, + CanComment: 1, + IsAI: 1, + } + temp.PlatformIDs = append(temp.PlatformIDs, cast.PlatformIDENUM_YOUTUBE) + temp.MediaAccountNames = append(temp.MediaAccountNames, utils.CleanString(row[5])) + temp.MediaAccountUuids = append(temp.MediaAccountUuids, mediaInfoResp.Info.MediaAccountUuid) + } + // Bluesky账号(第G列,row[6]) + if len(row) > 6 && utils.CleanString(row[6]) != "" { + mediaInfoResp, err = service.CastProvider.MediaInfo(context.Background(), &cast.MediaInfoReq{ + ArtistUuid: temp.ArtistUuid, + PlatformID: cast.PlatformIDENUM_BULESKY, + PlatformUserName: utils.CleanString(row[6]), + }) + if err != nil || mediaInfoResp.Info.MediaAccountUuid == "" { + temp.Remark = fmt.Sprintf("Bluesky账号名不存在") + zap.L().Error("CastProvider.MediaInfo", zap.Error(err)) + req.ImageWorks = append(req.ImageWorks, temp) + continue + } + temp.PublishConfig1 = &cast.PublishConfig{ + ForbidComment: 1, + PublicType: 1, + CanJoin: 1, + CanQuote: 1, + CanComment: 1, + IsAI: 1, + } + temp.PlatformIDs = append(temp.PlatformIDs, cast.PlatformIDENUM_BULESKY) + temp.MediaAccountNames = append(temp.MediaAccountNames, utils.CleanString(row[6])) + temp.MediaAccountUuids = append(temp.MediaAccountUuids, mediaInfoResp.Info.MediaAccountUuid) + } if artistNum == "" { temp.Remark = "艺人编号不能为空" req.ImageWorks = append(req.ImageWorks, temp) @@ -1192,7 +1242,7 @@ func ImportWorkBatch(ctx *gin.Context) { for _, v := range resp.ImageWorks { if !v.Success { rowNum := int(v.LineNo) + 1 - excelData.SetCellValue("Sheet1", fmt.Sprintf("H%d", rowNum), v.Remark) + excelData.SetCellValue("Sheet1", fmt.Sprintf("J%d", rowNum), v.Remark) hasValueRows[rowNum] = true } } From ba22283d9eff1fb47f34897cb957f6e72486ca05 Mon Sep 17 00:00:00 2001 From: cjy Date: Tue, 23 Dec 2025 14:08:56 +0800 Subject: [PATCH 06/19] =?UTF-8?q?=E7=A7=BB=E9=99=A4=E6=B2=A1=E7=94=A8?= =?UTF-8?q?=E7=9A=84map?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/model/cast/media.go | 5 ----- 1 file changed, 5 deletions(-) diff --git a/pkg/model/cast/media.go b/pkg/model/cast/media.go index b73c16f..8adffd8 100644 --- a/pkg/model/cast/media.go +++ b/pkg/model/cast/media.go @@ -29,8 +29,3 @@ var NamePlatformIDKv = map[string]uint32{ "DM": 4, "bluesky": 5, } -var PlatformIDStrKv = map[string]uint8{ - "TIKTOK": 1, - "INS": 2, - "DM": 4, -} From 43ca3b2f841d2795998c09b83aa99ca433ef28df Mon Sep 17 00:00:00 2001 From: cjy Date: Tue, 23 Dec 2025 14:14:49 +0800 Subject: [PATCH 07/19] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=A8=A1?= =?UTF-8?q?=E6=9D=BF=E4=B8=8D=E5=AF=B9=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/图文导入模板.xlsx | Bin 11875 -> 11917 bytes data/图文导入模板_old.xlsx | Bin 11917 -> 11875 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/data/图文导入模板.xlsx b/data/图文导入模板.xlsx index 7fda799f4b94e177fea40b311b81f9c418890baf..bc9c96508611f62155ee973ecc1e94dabed9dd30 100644 GIT binary patch delta 3380 zcmY+Hc{tSn7RP5HW1Z|vrbZZyv5P^Q7+Yj3B4o{yeK(BBzD9iQB73&7ugR8uBAT)` z35k^CC&ZA;@80{n&pm&f=kv#TpYuHDbDq!Vb(Sn1TGr-(iEeRPj+$T)$QA+uv4TJ# zdk;GUZx2r&DLW5u2gyJ;S3;`g{Z~ki=nXn5yoag|gc=BG&(OUzx2a8fNQujDu6I&j zfBT1;T{3E<;9s$FDfx|3mQ-?Od}p_^**8cjy(+7d6=OvJEuK=nNE`py(Y&^D(x8AH z+lcY-@OCGP)<|5On|-j&X2GE~Yv|67Hg%_tjvyj2!JTL0t7@;uIbKxFD~+sXrNU>&Khu=dwEJullIhzLSUs z+KmLY{ngK>U2{;*s636I`kU1Kucc=$WVBN_>27`@h8w$w?agM;(J2fTC-?_(`h+5O zI?|Cp^q2DtjIOV^&7~~Ohk?Ey1fyd`c_uy{83pBDyy$LH{#r{pnT$crL}ON6b?En; z=DXHBn5m3@&A&6VM$K&%W*+h8vE@i=^f4BE@2DZ-_LvQ>LuojUI}8KG+*rK&o8rH! z4hBI$kpLRXM{G*9)Q^xp?y}wiykvLW`vEhTwM~f70OP|k3ZK!421LS{me5(W5YqvH4mvNRUYh zzfIy(v?($Uyfmitv(A?!rA>SXqs^62Ur^3b{4Q?KiQWmgIsY`y@Eg!2KB$14u1IOW zb@CIe@1n%ce#?-?cyZorHN1F2Zwdap$Ayk^fgUdw-XRKMn>NsBTW1S!(6o|o(bj@h zBWsGPLvWLUAxuMy+t%h?on121_locr{0I#;Zwq$u6Uq8IBn~Z5Gh$!Nh>doW*kPxn=RJsONNs*-@WNL51A+?9ZmjiB=Vi6lqRTxdo0eX;YW-_RVu~ z?YVgW)NcoA9hnzmHsrbo;mXhS_fI|I17c}Z8G7$nkR543pljTKH3KhE=46bUZd>}~ zVmS!&*@tkZ4KU+i+)^FI8S!-ZZ6gKsBFN-wa}&5PoL}T{J6IU35ze-3L$y}PEG{ml zM&Vb^S-tHGLgBQ{nmtn#y%DK6OxcY8!XH1PpR8YA>Jnyvo;1`;5H6+K>`^_opyK%> z2!Rja=xU2rm9Z^i_D1GJQc3Ht+c#tb>uqrHN(W}Hhq6+zq~#*{&4`KB*ZMM}7X8xV zuGr~&YJ%RwMFbt$=UNP@)-3xZ#3(6eUATEMfidJk!zA9EP3k=m4bSucRVt6ZJ*@B{ z;r5!iGsW2IH}|X(xm@ktQZ)y+KJ|bm)(87RP*0SYKKP7C%NqJwiJ#@8fYeLTs+*1c zkz<5jQ)+6%FE*d=k}I;1c}BWk-OfdhBD@GB&Vs0vEcW}BP=xWL(cZ(@d%H_m!9|M;Qp;B-xo_r2bwtkVKqfmopv9ab)>#X z>G^p}k$x$iHe0nYMONOUoCkNpbBbqm@a1Mq`pdSzFW*c^*|x>Lv|yUwUNqjo)KaL8 z<}APQd)cL~-NSi>wckqF;Z6Rhv`2j4?<>%QVwuFS7t7wipJ&i%v0v`sSGD+z-z@%k z7{i<$07#Zz&^gWE{`QZdqCM0+YD)Tsa9;$?& zih1YpSC@08hY2W!nS*pj9hae3M5xQl?PI+(G-kkYZcYcg`g zr2gk|*B%M@m!Q+XYqbe^~d9*ort5Tpf_p8d+1WzgBr|)<~Ds9&sW}3o|E|mfPOH zE+cW@-uxtx);*#NEo~X!sv!A+c%s)R6RyUX7=0RZ62XD|#Qs|{EzD|iM~A1QIFlCo zQdfkaDaCjSpM7IL$x6YuWlH;&RKwQStEO+YZ^7#Y5vx+l6>BK}l8n6bOgHb=3N}^m zNgHgtYPy)cv?)N7<9%JtVhTaCokN4ooWc(#OPV<^glgg*66w$kg_8;AIkfIqs7*oh zwh#9}h8CDEu@Ik&?`4|bw2Zzht+`2P5+c(;oH4(VLr6?0AUgnVh$@BsS zW7EjjKSM7fygTybXgrgE8X%m>z^U*Q<;QAQO6Bj%_upA8whmF=^y=x?8ao#h)XbUb zW~aY-H|mI>PwblEV9ASUy<_3(Y@$p*(|ybDbKHzx;i-T%_?Wj6YmhzvK!ytzQfvo_ zNKR2ybyCiGcT@m&<5@aP{?u*TrP90G2H1HXA`a;zE{WbTG2lUx+BSPf&3YJh+kQRz zu&U#&j4hn|9`=`|u$iuWe|3F!sMHbkpYN{0kin0E-o*~omU_$?(ZCxH1d*ik>MBR{ zZurLOdv0>tt{o}r<>sQ>^-k@cys32$6@Z*<7r)X3v}8%RX!!Z_<>F06=O-7*StXrO zagy(R+b_-!@`pwri2{C4d!Gp;PfMDF4KY4YoA#ABlX=tNT|-;^sl1h^!Wzmd zUBS#E8fhSjPl#g}Niz{a3K8$|DxF%OpnFryye|zFOsu9OEAT_LTD$^lHw%Pdg5xr- zOjz-U=H^yF^YH8h8_M8pS<&G(7x$L?iGuNEf0UGx2&=G*ylOie@_YR zg?5)slxRd0M}7*pEbJ8MOW8Il=r;8dYugQoos zY4Kd4T_s8K>86y*FVGLuJ_YYi6uf=3!99eJv-#k7WMhDI!k z6_02qJkvy~b+omMWOe*f?1)p%8=k5>n#`|scNR`NkJz@eZMGFyC<>*1QCHhT+m*V^ zq}t_`FIBI4-A;Gm@zEVsnd&ixnZGv9AQOtia3gpVi8@J|u&yTOjoBl~q@Nggz7l%fmkSxN zm@I%}r>f70k)@H2vYSk_p@W723>HmIftH5}DKlX+yi^!%xRfIk|6Ue0dg0W1r&`2( z;kQorair!Tb7;)j_wV1E8W`#RHLV3Mlk5#}ol=D1C-iluCY7&q72GXUWL{6%U>QhZ zXC6rMfcO4%zxdN+Vu+ZFt%_;lK6D=pmPvG0r1*bh;JRL@UKvv->e+x%3|`UoI?Q1s zWYmr&1iey_n^@&r4|is79oaVxpYeAvZ|nSX?kDZ#r;m4NG^zRBF)O3)WOi!fN5U0# zLJvu=)qH1As%37ug|dG?7jk55z$6#b?6un8J?hMIEPw|6A}MMLLj!xd_ezrZ6fHJrv-D;sVeTXbAD-C=3KkoIdkEN(6y; b{!iNnlu6*gHo*5|?*+(8ik~tRI|=v~qVpH3 delta 3303 zcmY+Gby(C(7sq#DsRg8$rE7_0cWDt=Vo6EGpiw|TSOJxmTtX0}{ZZ15h;*0Iol*)c zNGM2ys9Y3y@x5<6cm9|-bG|d@nKSduC+5zoWn~(e(4`*jY6=E{Y)C*L1`r5j_sG`J z?a^a*aob03_F_+5oC98T=yplK`}RWi4Bhr#cz6wud*)OFq#cnf7{pTjJs=t3KJQAQ zn%#coAcpf8R0$m87Cb;GMz+zl7J{MCOwHi!3QTBWgx zH9c98ZfD?AdeiPYz}3ehfu_@_Ro8XJB~t^lAf&`v4h|cIf3}icPMW`+O|e-pefy`jg95tT# zg`?UDTG{rgqVX(GW(6djwhlN>f%otg+Dv7~yKC9P`YUk?$z$OOYhCYV6Lk|+zIFu_2t3r8Qm7jn+G9Z-|5Gbtpfqw@{C(h*W; zLN!oCYvWg6TKZr!iEcCjNz_Z=9V_g&$xCn%|3T$DXDp`? zD_iHdr3y{XVVZPIT3qbr5WHHXKUQnYpeDRwJ=}=UxI)qEv@>V=p#XS3+nY>yaNTb9 zJ1xpi+Es`Kth-+DvNnM;&PvW>858%VqTg870oyj8rB#~Vo4pTAx=uDw`JzHvMM&7K zMe;fQrYu(b<6x=biJk0+qJx9pYtifXaj~zO?wp<-bljUSk=!cbnd7MI@t@Et z#F4ghH~t70JMN&lcgWSdwz-eG&T;<0J!LO2y26^C)}DknqTjLZn8 zg7Btj^3bN+puINe(t!RV9?n{QxtgrP>ZjI7 zMuV@a{F&h(J&WliDCs<2u8c0&w;MWyxF26xYSK(*;?yZdc(qMz^cqMQxb#R28OVL` z(o?U#zs$#nG(pHmN>ZHmWZl>7`N7V1pee81X^v8&jdc26@I`%=D}ajD-MA9tt(M%V zYwn$N%lmbiG!<4uDLv`a@4w>jfL+O>{PH9}3pXw3(l0w?5mpa2IBPnoCU0umhK`r% z9d8;wPJScV_rp!>`X`Hr9g;wWT=1;`W{OB>Z}~Wp?NV)Wl<<7mDfbBX@2V%fnP)|7 zrZUPFoGMB$QlDmM#4FVcRIe=-}Wf+$cIK!3rN!Dt9SDImN#LPR<2w{>&&!=D3 zMdvby1?agFFa+gp|DKgSnU!B*N_D7tQfwfUsWDjy`zC&Y4(!7)w!>}?0qXn1Y0#N z!3W7R5^496wmzuF^z-7aryB~fttq?Q@1N4OsACf*mI-aocjbZkZ_Uq$%as>%*~9=_ zZ-^P+X#(t>4hV~_^u0}myK)A}DWt4SMhZCf7~zGO%%>LIvTE|lPALy*6$D#f(~FiA zsv^ov`jpq-7}=S6n8=V0#5aX}Zp#ZMg%p##5g(dZ2nepG((8UEM)Ebnh;{jEgeU9r zR)hg7!L>|amzl(^&{$!Hfu|*cgX^Fqs&Se@l~r@iU`m6Qp>T9d)|3)&?98kdU8e77n{LrNiqyd>Jn!;cEb|RYV1}IZye#y*`!kf@g=1@1wlxO)$(p11 z(67peCY*~OWcgX#qL`mkI|i4asZJT>9iQyaZU5p+e*XEDiqBL zy(Q*xZ0k6S2{|J=$yJ#xy5QpGV76kjLW-={_oT1Yq|quGoi#NS` zM&`N3F_X~Fw#E4>|Lb3VeEZ_B1PGs`a$N5kUX?H)oZu^F}Yl#S|l~pRFS8LkG2#HpTV8#gQ+BDSi3d=;P z&Rk?;R{rGUqv!F7N(JfNY7q*8B2;RO3e7QKhej5CBi^W>Qft4`5LjRkg4BSozR1wU zbT8n@7g~@;a&=9d_GCS9RdDn0qh;XbE8B}oUHI&0SP|)ru5!(YVRA;-xW0&S_$b%Y>+Xz(-cWXK`0Zu8 zKNbBvTBL``7Ii-vBF`6hu3Iea=zTh4_IRIjVQ);M>-V|x>#HLOo6EFJeIopc!hRfH zbs;{aT_I7lD7209l!jdOxYrSX$kH!WVm`LKfr{*HbkxMc5?eUTJ0}4A2Q~gr8nSKF z%s?>=O|8y+Gfc=aDeblHB(MnMCT#CouFcSivM?#)M#r^apR2UtD&!lU9JE6HH`Df? zu7ym3P79#K5fwt3k=k3Xr%!5vf=WU5<|((LjWQ-eUge4)pQYdK4{?+m6fiC8=W6+Bl_!cgp9r9o#)554a+$gb=>oE{gbM0);SO4UYl|?J|alG(Y+ik zU-Tt&>k~C(!~r?lpraEl^|ekd2(?3pA&-xco_R6EOUu;j{8^-;w%gM+D2o?-gtg< z^9fY;Q^8()R9oG(jl=!&MmLw!@-U!d@-70QHtHC zVe~NYv*x?`gDhIxIfDjbb4brkk%UbfG;{$yG`%R#WcjX0BOCGN+YSGjN&^F#W{no> zIfz*GS(0_LS(>p}#W{t4@EEdKsbivCc>fIFcIRiea(VsI&l^_z_qfDZPY~OzxxfJup!y&612Lkq9RDQG z3n0BHU=Z&`%>*op;=m699+U)l05C+!lI$aZ2o##*pYQyS;J=baU<{=S&H)(E3SdV- zA1w=x147Y49Dgny0$m87Cb;GMz+zl7J{MCOwHi!3QTBWgx zH9c98ZfD?AdeiPYz}3ehfu_@_Ro8XJB~t^lAf&`v4h|cIf3}icPMW`+O|e-pefy`jg95tT# zg`?UDTG{rgqVX(GW(6djwhlN>f%otg+Dv7~yKC9P`YUk?$z$OOYhCYV6Lk|+zIFu_2t3r8Qm7jn+G9Z-|5Gbtpfqw@{C(h*W; zLN!oCYvWg6TKZr!iEcCjNz_Z=9V_g&$xCn%|3T$DXDp`? zD_iHdr3y{XVVZPIT3qbr5WHHXKUQnYpeDRwJ=}=UxI)qEv@>V=p#XS3+nY>yaNTb9 zJ1xpi+Es`Kth-+DvNnM;&PvW>858%VqTg870oyj8rB#~Vo4pTAx=uDw`JzHvMM&7K zMe;fQrYu(b<6x=biJk0+qJx9pYtifXaj~zO?wp<-bljUSk=!cbnd7MI@t@Et z#F4ghH~t70JMN&lcgWSdwz-eG&T;<0J!LO2y26^C)}DknqTjLZn8 zg7Btj^3bN+puINe(t!RV9?n{QxtgrP>ZjI7 zMuV@a{F&h(J&WliDCs<2u8c0&w;MWyxF26xYSK(*;?yZdc(qMz^cqMQxb#R28OVL` z(o?U#zs$#nG(pHmN>ZHmWZl>7`N7V1pee81X^v8&jdc26@I`%=D}ajD-MA9tt(M%V zYwn$N%lmbiG!<4uDLv`a@4w>jfL+O>{PH9}3pXw3(l0w?5mpa2IBPnoCU0umhK`r% z9d8;wPJScV_rp!>`X`Hr9g;wWT=1;`W{OB>Z}~Wp?NV)Wl<<7mDfbBX@2V%fnP)|7 zrZUPFoGMB$QlDmM#4FVcRIe=-}Wf+$cIK!3rN!Dt9SDImN#LPR<2w{>&&!=D3 zMdvby1?agFFa+gp|DKgSnU!B*N_D7tQfwfUsWDjy`zC&Y4(!7)w!>}?0qXn1Y0#N z!3W7R5^496wmzuF^z-7aryB~fttq?Q@1N4OsACf*mI-aocjbZkZ_Uq$%as>%*~9=_ zZ-^P+X#(t>4hV~_^u0}myK)A}DWt4SMhZCf7~zGO%%>LIvTE|lPALy*6$D#f(~FiA zsv^ov`jpq-7}=S6n8=V0#5aX}Zp#ZMg%p##5g(dZ2nepG((8UEM)Ebnh;{jEgeU9r zR)hg7!L>|amzl(^&{$!Hfu|*cgX^Fqs&Se@l~r@iU`m6Qp>T9d)|3)&?98kdU8e77n{LrNiqyd>Jn!;cEb|RYV1}IZye#y*`!kf@g=1@1wlxO)$(p11 z(67peCY*~OWcgX#qL`mkI|i4asZJT>9iQyaZU5p+e*XEDiqBL zy(Q*xZ0k6S2{|J=$yJ#xy5QpGV76kjLW-={_oT1Yq|quGoi#NS` zM&`N3F_X~Fw#E4>|Lb3VeEZ_B1PGs`a$N5kUX?H)oZu^F}Yl#S|l~pRFS8LkG2#HpTV8#gQ+BDSi3d=;P z&Rk?;R{rGUqv!F7N(JfNY7q*8B2;RO3e7QKhej5CBi^W>Qft4`5LjRkg4BSozR1wU zbT8n@7g~@;a&=9d_GCS9RdDn0qh;XbE8B}oUHI&0SP|)ru5!(YVRA;-xW0&S_$b%Y>+Xz(-cWXK`0Zu8 zKNbBvTBL``7Ii-vBF`6hu3Iea=zTh4_IRIjVQ);M>-V|x>#HLOo6EFJeIopc!hRfH zbs;{aT_I7lD7209l!jdOxYrSX$kH!WVm`LKfr{*HbkxMc5?eUTJ0}4A2Q~gr8nSKF z%s?>=O|8y+Gfc=aDeblHB(MnMCT#CouFcSivM?#)M#r^apR2UtD&!lU9JE6HH`Df? zu7ym3P79#K5fwt3k=k3Xr%!5vf=WU5<|((LjWQ-eUge4)pQYdK4{?+m6fiC8=W6+Bl_!cgp9r9o#)554a+$gb=>oE{gbM0);SO4UYl|?J|alG(Y+ik zU-Tt&>k~C(!~r?lpraEl^|ekd2(?3pA&-xco_R6EOUu;j{8^-;w%gM+D2o?-gtg< z^9fY;Q^8()R9oG(jl=!&MmLw!@-U!d@-70QHtHC zVe~NYv*x?`gDhIxIfDjbb4brkk%UbfG;{$yG`%R#WcjX0BOCGN+YSGjN&^F#W{no> zIfz*GS(0_LS(>p}#W{t4@EEdKsbivCc>fIFcIRiea(VsI&l^_z_qfDZPY~OzxxfJup!y&612Lkq9RDQG z3n0BHU=Z&`%>*op;=m699+U)l05C+!lI$aZ2o##*pYQyS;J=baU<{=S&H)(E3SdV- zA1w=x147Y49Dgny7Hg%_tjvyj2!JTL0t7@;uIbKxFD~+sXrNU>&Khu=dwEJullIhzLSUs z+KmLY{ngK>U2{;*s636I`kU1Kucc=$WVBN_>27`@h8w$w?agM;(J2fTC-?_(`h+5O zI?|Cp^q2DtjIOV^&7~~Ohk?Ey1fyd`c_uy{83pBDyy$LH{#r{pnT$crL}ON6b?En; z=DXHBn5m3@&A&6VM$K&%W*+h8vE@i=^f4BE@2DZ-_LvQ>LuojUI}8KG+*rK&o8rH! z4hBI$kpLRXM{G*9)Q^xp?y}wiykvLW`vEhTwM~f70OP|k3ZK!421LS{me5(W5YqvH4mvNRUYh zzfIy(v?($Uyfmitv(A?!rA>SXqs^62Ur^3b{4Q?KiQWmgIsY`y@Eg!2KB$14u1IOW zb@CIe@1n%ce#?-?cyZorHN1F2Zwdap$Ayk^fgUdw-XRKMn>NsBTW1S!(6o|o(bj@h zBWsGPLvWLUAxuMy+t%h?on121_locr{0I#;Zwq$u6Uq8IBn~Z5Gh$!Nh>doW*kPxn=RJsONNs*-@WNL51A+?9ZmjiB=Vi6lqRTxdo0eX;YW-_RVu~ z?YVgW)NcoA9hnzmHsrbo;mXhS_fI|I17c}Z8G7$nkR543pljTKH3KhE=46bUZd>}~ zVmS!&*@tkZ4KU+i+)^FI8S!-ZZ6gKsBFN-wa}&5PoL}T{J6IU35ze-3L$y}PEG{ml zM&Vb^S-tHGLgBQ{nmtn#y%DK6OxcY8!XH1PpR8YA>Jnyvo;1`;5H6+K>`^_opyK%> z2!Rja=xU2rm9Z^i_D1GJQc3Ht+c#tb>uqrHN(W}Hhq6+zq~#*{&4`KB*ZMM}7X8xV zuGr~&YJ%RwMFbt$=UNP@)-3xZ#3(6eUATEMfidJk!zA9EP3k=m4bSucRVt6ZJ*@B{ z;r5!iGsW2IH}|X(xm@ktQZ)y+KJ|bm)(87RP*0SYKKP7C%NqJwiJ#@8fYeLTs+*1c zkz<5jQ)+6%FE*d=k}I;1c}BWk-OfdhBD@GB&Vs0vEcW}BP=xWL(cZ(@d%H_m!9|M;Qp;B-xo_r2bwtkVKqfmopv9ab)>#X z>G^p}k$x$iHe0nYMONOUoCkNpbBbqm@a1Mq`pdSzFW*c^*|x>Lv|yUwUNqjo)KaL8 z<}APQd)cL~-NSi>wckqF;Z6Rhv`2j4?<>%QVwuFS7t7wipJ&i%v0v`sSGD+z-z@%k z7{i<$07#Zz&^gWE{`QZdqCM0+YD)Tsa9;$?& zih1YpSC@08hY2W!nS*pj9hae3M5xQl?PI+(G-kkYZcYcg`g zr2gk|*B%M@m!Q+XYqbe^~d9*ort5Tpf_p8d+1WzgBr|)<~Ds9&sW}3o|E|mfPOH zE+cW@-uxtx);*#NEo~X!sv!A+c%s)R6RyUX7=0RZ62XD|#Qs|{EzD|iM~A1QIFlCo zQdfkaDaCjSpM7IL$x6YuWlH;&RKwQStEO+YZ^7#Y5vx+l6>BK}l8n6bOgHb=3N}^m zNgHgtYPy)cv?)N7<9%JtVhTaCokN4ooWc(#OPV<^glgg*66w$kg_8;AIkfIqs7*oh zwh#9}h8CDEu@Ik&?`4|bw2Zzht+`2P5+c(;oH4(VLr6?0AUgnVh$@BsS zW7EjjKSM7fygTybXgrgE8X%m>z^U*Q<;QAQO6Bj%_upA8whmF=^y=x?8ao#h)XbUb zW~aY-H|mI>PwblEV9ASUy<_3(Y@$p*(|ybDbKHzx;i-T%_?Wj6YmhzvK!ytzQfvo_ zNKR2ybyCiGcT@m&<5@aP{?u*TrP90G2H1HXA`a;zE{WbTG2lUx+BSPf&3YJh+kQRz zu&U#&j4hn|9`=`|u$iuWe|3F!sMHbkpYN{0kin0E-o*~omU_$?(ZCxH1d*ik>MBR{ zZurLOdv0>tt{o}r<>sQ>^-k@cys32$6@Z*<7r)X3v}8%RX!!Z_<>F06=O-7*StXrO zagy(R+b_-!@`pwri2{C4d!Gp;PfMDF4KY4YoA#ABlX=tNT|-;^sl1h^!Wzmd zUBS#E8fhSjPl#g}Niz{a3K8$|DxF%OpnFryye|zFOsu9OEAT_LTD$^lHw%Pdg5xr- zOjz-U=H^yF^YH8h8_M8pS<&G(7x$L?iGuNEf0UGx2&=G*ylOie@_YR zg?5)slxRd0M}7*pEbJ8MOW8Il=r;8dYugQoos zY4Kd4T_s8K>86y*FVGLuJ_YYi6uf=3!99eJv-#k7WMhDI!k z6_02qJkvy~b+omMWOe*f?1)p%8=k5>n#`|scNR`NkJz@eZMGFyC<>*1QCHhT+m*V^ zq}t_`FIBI4-A;Gm@zEVsnd&ixnZGv9AQOtia3gpVi8@J|u&yTOjoBl~q@Nggz7l%fmkSxN zm@I%}r>f70k)@H2vYSk_p@W723>HmIftH5}DKlX+yi^!%xRfIk|6Ue0dg0W1r&`2( z;kQorair!Tb7;)j_wV1E8W`#RHLV3Mlk5#}ol=D1C-iluCY7&q72GXUWL{6%U>QhZ zXC6rMfcO4%zxdN+Vu+ZFt%_;lK6D=pmPvG0r1*bh;JRL@UKvv->e+x%3|`UoI?Q1s zWYmr&1iey_n^@&r4|is79oaVxpYeAvZ|nSX?kDZ#r;m4NG^zRBF)O3)WOi!fN5U0# zLJvu=)qH1As%37ug|dG?7jk55z$6#b?6un8J?hMIEPw|6A}MMLLj!xd_ezrZ6fHJrv-D;sVeTXbAD-C=3KkoIdkEN(6y; b{!iNnlu6*gHo*5|?*+(8ik~tRI|=v~qVpH3 From 06cff0562186d5fca2cad6046dbd4f8363796845 Mon Sep 17 00:00:00 2001 From: cjy Date: Wed, 24 Dec 2025 11:09:22 +0800 Subject: [PATCH 08/19] =?UTF-8?q?=E7=A7=BB=E9=99=A4=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E7=9A=84=E6=97=A7=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/图文导入模板_old.xlsx | Bin 11875 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 data/图文导入模板_old.xlsx diff --git a/data/图文导入模板_old.xlsx b/data/图文导入模板_old.xlsx deleted file mode 100644 index 7fda799f4b94e177fea40b311b81f9c418890baf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11875 zcma)iWmp}_@;6R!cY?dSyL*73fndSi-92z{4ek)!o#5_Hkl-FPNP_+k$==N_ckjM$ ze>iiVnUd+M>gt;6pQ0={1T4tY2vOJ&db<8+zySXk+PqV=x3P6#R0NWt18=6 z%Ebu^0%8sZ0)qTkGJRWH23IS~^w?1uaAx$NYyT7EYMW_76zUJu{-G_1wFf-L$F+VR z$jIiiFEy7Nkv+lHKSlUQ=~MXeV5~IqUT1W#w-9@NvNE6Y|2DJ-hzuc>5t4mP(>Atu zd0=lV@m?}pRtXOQXT`7Z+uiq2tT7GSqK-JlY%dAUQ0KnnBs|kVLMSchLY8tAY>5Wr zg5vl?VI$iY3vspObZxfk$U*3<>+&3SgOSM4`6&p;F7_CskVuDAo$lm zuJR^R?yShC9#qfL!B&w-uI{DJpBcGZ6kw+TG_pR>$S8j`@;e)QqbDnS#dgYcGhz3i z_@5}+pTs&kk4!jaRmXvMzTcoHTdg;UOC)nxvV#`R?BG0$!2ga}aKyoj9yR!wsq6hi zibeY)pDWb68WAMqBV=@6%%G7AOW$LP+{!4h!^T8DMmG2fTsqu>Ldy44AE@A$lXD<8 zSt|V~&4$Ieg&cNef~znb6qlVnMQ?52VE3l$rrhG~Gu=~oN2IvM9pc~Ns<_0GRM;ogrN94!I z%XSMP2cP&q5`XooNtK?aAeWZ@2D;JdU#AW;Sb$*Y(tTX;rswfE@l9_47C++2=?E+9 z*+Bx*SPb=wYz)zO{(yc?j1}V*jQgS*msli6o#~-4Y+@GLv}wYZFFknVk_B?(weL_w zDEIV68p*^sq5CY37Bv>~;=<3vD!_}k8#rK%e+8l_&Ob(9k!ab)M8gkhJ>>3M2 z7B#)Se>m$jSo+9(_>pk&XtpCkykFv+6V^om07xy;dEr2)SCJ z=|a(#`kh}{@X{X@EXg}JjKdDpbNFgRZ#L?-lfp28$!vv;1{}e=9BWInzH{3-(TQ7d zCw3FoY_5!9t)`C+rpwv4)_=U*U778vhmD+m(N9MXcPj>ayK+9SyCaz>h~**D2nlai zRe7Ce!a7gi#V>8UUJ1xMH5@*NaQM!-+9aNchA&-6=G->9*C)>;Z`I2*EYG#zEGt@V zyiQC^txm@Mo*DYSH^W%G_X-#1Oq^Sw>kTbG!h4I$ydBZ`mtHUk4r-P3E+UDIGH+ZG zUb_^RvBL0*@uw!N-TjDu3u*@y?vca1P1&?8gS>8%v3a(KU(*FMtt|d7V4_U+`+=fu zVkvX~l|93&H7)B-=C}$jzt>*q(C;l>xTC1PmPkR-QZ5DE6O0nvRk;$SKNM_funB14 z3-ZS%2d0Td^VgGCZ@jNE0fp~iLtQ5mQrw81#;PWrLX=uuEhF@g9Fje4YY@%#fL>t0X}&=A=GhO+8<` zig+9+93a?RNl&C?7oWX_I6HQ#!qa_Q=ZCx#VJ-KJISA*i%? zgp-8B1>uMRA~U_&hJ4=Eq+^1qK%^E?-k8btwyZz(<)YUhiBWG>PwH zFx#a;czG+`RbYfTA0V>wUsNVilUnquno*#=nOU~asL6%Ae{qh$L*819O!F~cn5;~_ zUtqUX)lkDxoeg|2y2*dLEyoWWq7bZjs%dZ+nwkL!EY(G>LYkfb|32Xf@R36K& zjPw{C%syX@XAXt1B^2-F*~jq4SrlO`=1G*yme7xp->1a0<_aF>z|D>hypZzh%5*)5 z%DnE|pr;lWZ1|(+#vUfY&8&_@k+xbJ7|5*Bo1ADpN!dZ6Kf_jB`sL1PdhYqvBEFjq zaxLrDXh&#zjciI)hgspILkJY}4Hg~ZruRd>lg@PjvK8LpF-L0z=$am0;kieZ8+`Cf z5)kceMy)<9qh!Yy*=NN%7r{i6S+@|vXe{T@z$cJiYQg11dl(Xdz9lc}UIqs|-L4Sy zPhlcK7Sco3rQRLkO8Q6vD;%60Q>?;5$}UflS3L-rVd_?sGKy!kQQgooTdA_-NzAHE zmS!Fq#ZVsn96wcW$&>u^hTJy{WwVvvH*lzseK^XFU(n{k=6%ew`s~OgY{vYWMbSJ3 zRn=Uc+-g{2xj!p;?1`D$?{+)oh8hPnwsIV9>KBeP$Yx50FkJuLtm!$z7y3&`iPxprHOm2&*w&N9AEBwFa>cE z8qW9V{&gcQTtA7|zS@zJLAWe=L$dRcV7e@zD~A=?CF}>Lgw=@D*tVxPHeZ??O*q8O$0HX2{arq2Wi6zi*ldPH)B+ft%(> zU|Rnl$(ZFS8Ars)+bl7`2cLjn5kjn3d={SO5dUf*g=`su&|O_-(pz9fe3Q~MbL4$* z%B#Sd7jk1D%|_Tprpri}5n=oaIme!3S2NZgs@^f7T7Jyuep!3P4pV7S#@vK>ml64g z=-F9!wSzvP7Kou(CG#$QPCFJ!B0V+^+HR+Eo^z*Eo|UQC1*joA84kU%nL8;!B{3@S z_LLyF#6q=eF##GJQ&I|qKIWod?FZLnMv2Q=F%fUE)06{+9lwM^>(?8ROeG`R$=T%i zu~4N&qXf9B?-dHKb$q{=CdTOdoT@`ysVpm)1u=>?#SwL=E6h7d@4i!B%nhr7GHL*` zbqd`Zd6To%YoFY4-C;U%Dvz6TP*1o82shBAKCrNX!ps``QCKR7kLpdkxA8gU5^;gM z;RIZ_IIWN$mo5IDE;(-=tyJjHuWKWdHH!-+eEZNn#|COVx&zkSZKBcsMoD#H$FsAr zhOqn=zSt~A&Le$fhw_701li|ds82%^RCphPQv_t=mbgvyM{qdz`0^d<9i&!p66v|o z2e{2x#;aQ#1^7ABX2;f-vNyf7Is!~|++S#2CN0X?zg66t?#$r6X3&d<^{CnuPxTwj zQ;YCYSs)<49?i4q*{7s^0R4MBEMdip{6FG>^`GM5?KDSF`mcBpt@)RD*u5T?sG)qJ z#I1EoC(RA6)hzS5V6EM|oY9&)oXU#4u14_`EA-C$>`e4aQ)M_k2n)%A#wq6HDh$dn zCIImMn;x}tiyqk&2OG%^NHuOO05i$Vo&IM$wEPhdLkS-LD;`Mf*d-!czaGf_H6Gj& z9GD-0@sQ#7GaeeQv7X{V?Z4t7AS@2bh!f1VDQa&-CTA<$Gr1$`DIVSe8R;c_{WXBlk9mFa}yRgGS(&Z|m@GHBRv9|hkH zDebL_!}p&E_(Z{Ii?($(r}iaP^|em9Gsg(DuOU^YNj_ZBG^M>Xx?+ztWW@VUA)0Gx zh--dBCvR<>7Q}3_ob@e!?DHJ4lZi(CmLkz^-XPtu_4MZpZ3i{p5StLhYb%iJ47Yt^ z%NbpB+CeAbm{-sqn9D7`!ZcrdBeBY$DdOI+Un%K(L@#s3eM0Hav^@Kl%J1nr6Il5< zni^RdJ^KU-yt#${4y@@u0dvSx?foa&PvW2D+>z#J6dpTzJL#DqVCTy**=WD>tYzJg z0}+=c)wueDN$E5I-ngqFZ_6k`og^8Vn6P$qqn(gYzS@TJLrM?{mGUEG#?fGp0)7r= zV3xT8YsRXFH(~qrT@0-{AsHK2uQqZbN7qy@6}&BvA!)1v?)s7Ub(b~vi}zC~Idr`d zwvpnlPLKE3{*wHk5tCu=<)91G25ok*QX zw@06KMirZ4l2QUQKgqc0x(^ydgzWu@ZmuWg_R6e>wqvq3PawR>REZ#sWbuXYb!htK z88{9UIt&aUu6~}+`q)Fl%i1J3r6%FI*uw)|h9o#Zfe}AtCVZGQZGw5ev*O-72+h1* zx_jZ=M~oXb5QLDmf~wxhCasFv6z(~&50X*GW7bW}PN#_vvKAaJ!=nL3U)R_N_9{x( z4`+>AHa6G?)=DhC%PP^DtKr|{8lKj%dltSiQ{_d}2{4eE+Q;Py8>&-am&A%@&JEFV zZF_w{Q0wp=71ENbD8B%^M#cSoV%9CdWxYg1iA)-Iz%97n^hK=|u?$oigrp&=EIagK z_rQ&HaIk@ulsr}_G35u#Ktkgeu=*b_XTP23@cZDlx<72)t=D`D5zG*DcYHX7&K*YK z6Wi~>^!zbe=;L{*bb32op)2sP9EHX4kaQyW@S|}2PKYWeU!3ui>-k{~CF7^Ntp*!H zk2Pp~1WVUUG7SjMQ%&1&^0ib%fCV?f>3rN?e<&9!71RpB>`NTp4m<}juSN>z0GANa z$5YUX(PQ5FD+7VJ9@cM{Tz0;-D<8jyJ|M^{8X#x0J~ z1(ZvB(r7U|kMLzvC7AlZrUSo>kY~Pfb%{czEbliQ_@MU=XPHzO4aG+4#&8YUjM`BO zbzpeegeY(E{peYG)?m^2A%}odj3RQVJK*HqLEsr~igf&Ul`AEYBVR&doLj)x(H|3i zPJw}Pub7O4O#*{X2bZ_jDiSUZCj{=y1Pi|Ph}%mS2&7AfGUI(Vo>l|Ij)WY=u+>)) zhEgk{LsH7!to4tSAzvc83GMeet`aXuUtdYs;_(z(O~n!&3 zJ31BWQj)DKwvNJ|EIO0&t@UW}h0u<=qaFJ!kwYo$}3 zi^hxVYJ`DlXJRxp?xyc9^gQ&8f-3z)qIIc!i+>E zjk{hx7$XfY&#wA~X7fQ|k_)25)SI45d**AqA}9H)l~yHdza$2vGgm;!lyL!jPNSaA zH??kKp;R3{9yln+J{#gJb84Dd^bkq0j&zH`LLg#JHMG4+G&U z6frUZ^H+-Z^*bEE+OZrCNKH!92zdVn)(V&BP)Erk7y)m-|43vAukkuoV$vwVcp3#V zw%^h)Sk`@I$f7)1i+5+Fa*vMoBmI6d#_+lU^GcWVaItu({$)cMOB%#thbusW>spxI zb`zZLOqP&jwyag4(V}&-IDx?#%sE~itUhgoSzfdCMV`^3{S3R+I+1NBLWRX*{ZYRR znK@h?t=;XR73hLuUhzT`dYi?!F~}`7O*qlb-m6zN;*Vu|kB}Wu*V)6h>qAZw`Ajc` z0X&rUY&j4yO9{Mux8)?ai!B9G+?mr?^ptE+KS@Yl=^z ztQPyVK_n^lbZlf0KA0QeY)3*Rj$!G-lL-v*l}yRl5%2r3QJsQBdaz@@vn6h5X*gyl z>bs2(dNzIVRF_syM{S7UGicF(Bw++W)bD1u(pKqo7eJE*jZ}P@>OR;j1=$knTg$

4#kNku;{Dg_V6&9lD3(v?l!n2|eedl42L&!3mtBNEC(P6Z=^%F`SHYSM@y zr%Dv=TcYPt;*aU=O9n1aTwkDQrE%hQ;SQUZ0w%e|h;Xy(y-9v>{#o0bo%8FLpfN%2 z$b+v#i((Cpd`bw`=9#16rpZ2zdxEWzll`B3T=81d5z8z3mbX0=E8bhuRoSIQpjpz@ z*u_SeeCF!ybFid?RT8jlxO0AYIs*s;Q1zm{qcu*1;3kfGlqqC2b-AC@v^~XNJ{cG5 zzIzlXmK-J1XGcKmry_}`^uTkj^LGR9_76v(rPH^Z5#y?!aK0e%U%eGx$>l9?fPwr3 z2%lVD#R+!F@_JShaoXQq0{YnKT<-}ekSeg z6(rMBUdNSr4BV}~#?F(8+~(#RSeYkNy<2OqCi*G0g!7gYoD6;v_ zS30@ub2=B!j)bwl0HD9H;JP)8oqKPKw=bP#AiP_YZ&+#e?^ULXInbwrU8WnJ{lbl= z-CiJ;NmlyJbFNZeo~>D|MQ;&;q52^~uURuijiKTZ+S6~Gx{$wfvYhht!L04=b&o)K z{pz)n?y12`2CVzD@KNJ4tCpL^f{sUY^zIRTyQRU+D+JY7D*Ke>DQqSm&^PRg4RIRqF*}BG@JVH>JIXYL*$Wzf+xO-vArFS^5&9< z&zEl*scl|f3r_hh&J!-46~rZ}VRWB$hHZGi=!-sFSvllV$lgz!FD4#(IExC@-=1Hl zGy0gd5E8Upm60wXlIyKs;+-pDU)9Uxdmj!QzqyxhH}SA7+=PBh8#ujIIdcM8KYL7? zQ?50Ip09lHCXx~jQEO$6POe$)^eU@i^1Owg))5hZ9wv&JQS+d_{tMs5T?db?@T|UK z6nD3NnA5x&r1$DcU}{J4mJ5%nub^Y{iNl zw|))|FQ!AuP4&i`X(aWMZ@#*;n2+b3!rS}qf%o;Zx)0ZBHz&sclJ^Fl3t1C-xWNze zI8T_#$4{;zh#JfvwMu7ZM;J*8 zPUoa_*^zx$X}`S&lP@ovZ+&1~SKZOU+$a7qQtTkSN9IkQTW&Mw$@1pfU?@POu}IE@ zO#DIH&rak05B8bYr!f2sPG4eDNy@(ja=4G}GpTAfHNzh!h73wgEra;Cka+Elah0cD z7&yIjvRxY*gO-=A#i+9s!<~u-{$ke*61$|4j-|E@LF|RlnU>r zSc+g?*R6TKMIgqBUtxu0wP&O*H6Nzrs1c}-jQrp$Wp;Cwqt*!yk8EG=$P zHXUxU*{u_@E`5@PQC&ICK~Ac#)I;nD-Eav4E2$5;zVTKC*+}EJn(vn7rCcL`yM(|G zG3~KT>R8&}awKw_H<(z@)lrQl9%Q-zyFr+lqfFbMrWQvAbfuGVe$c{vi){v}_gkSQ8It()`$?}neP^r9OX)5p1fDbi`r zBM~knKbhn~JiZbNYWOVzH=qA@v8(k0ZlC}iR91a^AVFB;u0Xg`2hElMta;y?9RXQD zQy%@~*ZK0`2jglg`IvX=DMaJVY`vu%B2r>8#-0oAyzk$!kP%HvMh{$XY?G1U*klPO zDY3^FE6vgLY&x)%TQsB#b6UM6(TcVLx%oU|%qN9L9ESF`en38it=Do*Uu@(BL9hV< z$JG9nrj;R;aZLZ!7=3?S-=6b`qF9rt3>bH49bmp)0gqILS3WG4)wQSAfw%7Gd{LB0rptsHvN_EEhIfMlg6~=@h z-Rr~QxcS>r4uu(4;O{1^gIt%wz;@nhsJ2e)(W?YSDtlLkt*f+N8_}nkuN|>jWYffz zQnmLC%4|HA314?0%C+u>?SwUb-7;X4u-0LW_yC0xUx+}GwpKvX-LLIX?+X=vMs40a zH(bbs)MAX=9lw!c24C||BqDn>IasUQN`uZ?-$1g6c&&*DH%FOvh_1t?lRa=p-xwij zqRrq9ZGxF1Xn3t~5PE9Pxk2^|2T|!fP;V9Lft*?DUUXT7j|uK!`wl|5im!w@D#l)G zk|U$KhAHo$;_|}dVg+4;?b94Hc)Rx16Uylabo!^!d>jxg7^9^&yo?A(lZhN8g)p zjU93{AiT&f{4j5g^<2`3&%5L*`{@O0&qkc-yjj(hQOGX7xQG()`*>enyruYz2o(v} z(k+dKgtwp!fppUDer9_So|)PHxRea9*AX34!O+vvNy2UN=*{E)Fr5sdDnSF?{)3Zx z_mWW8Kl*GHjo1_*W_D^}8OKH{(Qrbu8kL`I2bbStBO$MhdWnt87M8{KojnzO)Q2EV z(4G6?GEM{WVEQ%gIeioiCqUqS>+41MxBkM4RiA6iSc1!XYJP7VJ>{M6x<34ZZj6|r zJfGr04w{H`OvWErZbm&eS2F>E-?ijInseY^j#b9zA-x(Cyb+c2+wI0d&AuJa@P;3X zIN{&U&&GHqp{*Gj#f(WwjsWYqA55+sq!b>yrld@JiqDXn&t!>$(m_qKv7QaPiHXvg zi-Hn`bbh{*2RE)GfXgp60ZLJcDeR+$PEW-BgD$3v6s$m7jI7Yd+v|plc%2#a8zETi zS^ssPk2{O|_m;_k+f5|FSEg>-rd>iP1BIqa*J&^;BN(Au58n(uPui=v_yWXo#dVf4 zFV^=4!?)ZBP?-WTL$STwQ~1Ukuv3r`cCWp!4t~@G2KIvi=)_3`9>0DiyawIOHHjJ* zyjlC2l&QGjkCKKLC|yde8^e(|$;QE_rl&$N(LG?&y$KyG55|$;$-!5kr%kFy%0xLR z8v%{!c`e*QG))VG$H$fLOHA050wGtRPKEc0e=5jI^XVU#0dht7dNQK@)Tu8X7nF#n zv3pSUI&%pebLu|EP_Se7P@>#hj>X0T)D9%bSrB?|~XX|mk@2M(aX?~L%-afEWqU zM@5eKWJ#ItIIfry);5>xZDQXOp!}wzeOlYK%1(|_7bWCBmsw#qzx`5_WT5$J6y+NU<9U$AQi$q zK)(tl-}`)UGW}O^`_HG{P{86=*WSqT`6;&tmvieQ@YyQx%L(pJ8ipszveup>glSn;xAR&HVf{iV%r7La&T^N8yK*|7r)3r7W39qd4eT`mpaaD za$iMJD3h06ypUV)9cchZo3*0#(78lkCV`?nU+)*1P>&WUJFcMCA2v3{hhuB}A96*< zS!uUaV$z)~qcH#hp1BL{$d}?!P~7A8P6ERxE;1pdWybUf;@UyUufvwNwcG9JKJ;rV z5QdRwjs6gtp5E>1jG5G`9hTw=B+of~BxC9C*-CU1VAqwhKc_EodHPWJXIuW!VE!j_ zio1q7-2%-x1MC~%0~+-B%~O z8TKKzNY1HO{6sD1=po8}g7J9BKPE!99^2lkvO|7q-Y5|r<|H9In+S#u)xO2m?97Y= zBOO>e8xQZpJF2?VBP`&}Pfpy`%Sa4duOw{+7{uH2#c>B;#=;AZ5e^ca2W@JTa68XA zFzu)7PjM%2jWO-A50c%l^@7`3olFpNvfT!@%qaXj}(igNF2%k^hV1H$LO1 zwSy)`pJEyMv}KJqaCymW9!YHRSUiZ|HRcjD*f6D!BQDyo?r=I)90Ci15xkqJ{Riuc zvs1WhVRGrNPQ4Q;WYzg%_5SwZ!^h@05+lQiaFc`WnAl~+B&-!U`s88d6icZbsx)`* zZTw@<*pvbNVlN_wxJk*7rrJp%A@*G21-4Q8p4DLdF}bSgHURI6OqF1;{STj|s9e>H zwb@RTT|tEomApoc47jjK#RucpgQaZhAC$|dcT?XYY10Nz)}&0>Z_D^iqnGmL+i$x<(YDd6eMLrc`g+R@0` zQCG#y*2v-QQ*Wd$e%QK;30eF);RY$D0fSlbV=)a_xIiMk@;-FqRiIc8k{f(b`$>-w zIWpwbggjY)hR3nCAXILCc`T$WUD==p<54vPpthK88sH_T!*fm7Nd!PmV2`fCAi_ha zsDO$~0GBIT)awgFUIyQ#f|~$)eb_M}XWfSB7wkQh9?i-O`Q^m*`~O-F_(qN(78a*>u=7EdHuX9%h{AEA-# zVK%pCs?yt)WUhWaCx;!KZkC}m7+p1dxOL$+=vS1eTGNwm$gps}StX8=9v&))y*jrq zN?;kRiNZ37pqo`XHXG)7e5oA3z8l?tonF+mSnytqcP|z<8(ZtA7g_WwHe0OU)la^M|m#ic@O)yoJL@t{ilxha|zG8W4|S2 z0S{20B>dSc`~RQ2DG+!EWc|3jZuGP`+Z#d{FR?~fqx6I0OI(7djD#+ ze|zaCc;K(` Date: Mon, 29 Dec 2025 13:04:47 +0800 Subject: [PATCH 09/19] =?UTF-8?q?feat=EF=BC=9A=20=E9=87=8D=E6=96=B0?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=B8=8A=E4=B8=A4=E4=B8=AA=E5=B9=B3=E5=8F=B0?= =?UTF-8?q?=E7=9A=84=E5=8F=91=E5=B8=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/service/cast/work.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/pkg/service/cast/work.go b/pkg/service/cast/work.go index d3c81b9..4cee945 100644 --- a/pkg/service/cast/work.go +++ b/pkg/service/cast/work.go @@ -586,6 +586,25 @@ func PostAS(workUuid string) error { ThumbNail: "", Visibility: "", } + case cast.PlatformIDENUM_YOUTUBE: + postReq.YouTubeOptions = &aryshare.YouTubeOptions{ + Title: workDetail.Title, + Description: "", + CategoryId: "", + MadeForKids: false, + Privacy: "public", + ThumbNail: coverUrl, + Tags: nil, + NotifySubscribers: true, + } + case cast.PlatformIDENUM_BULESKY: // BLUESKY + postReq.BlueskyOptions = &aryshare.BlueskyOptions{ + Labels: nil, + // Langs: []string{"en"}, + QuotedPostUri: "", + ReplyToPostUri: "", + ReplyToPostCid: "", + } } zap.L().Info("post 6", zap.Any("workUuid", workUuid), zap.Any("platformID", platformID)) zap.L().Info("Publish Ayrshare PostReq", zap.Any("workUuid", workDetail.WorkUuid), zap.Any("postReq", postReq), zap.Any("workDetail", workDetail)) From 48b3a022ebb9e9079856d645bbcd2b2edc71b7c7 Mon Sep 17 00:00:00 2001 From: cjy Date: Mon, 29 Dec 2025 13:38:30 +0800 Subject: [PATCH 10/19] =?UTF-8?q?=E6=9B=B4=E6=96=B0pb?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/cast/cast.pb.go | 10632 ++++++++++++++++++++++----------- api/cast/cast.pb.validate.go | 332 +- 2 files changed, 7210 insertions(+), 3754 deletions(-) diff --git a/api/cast/cast.pb.go b/api/cast/cast.pb.go index 47bdc8a..e1a921f 100644 --- a/api/cast/cast.pb.go +++ b/api/cast/cast.pb.go @@ -1,21 +1,21 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.36.7 -// protoc v6.32.0--rc2 +// protoc-gen-go v1.27.1 +// protoc v3.21.1 // source: pb/fiee/cast.proto package cast import ( + reflect "reflect" + sync "sync" + _ "github.com/envoyproxy/protoc-gen-validate/validate" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" _ "google.golang.org/protobuf/types/descriptorpb" emptypb "google.golang.org/protobuf/types/known/emptypb" _ "google.golang.org/protobuf/types/known/wrapperspb" - reflect "reflect" - sync "sync" - unsafe "unsafe" ) const ( @@ -402,18 +402,21 @@ func (CategoryENUM) EnumDescriptor() ([]byte, []int) { } type AsInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - ProfileKey string `protobuf:"bytes,1,opt,name=profileKey,proto3" json:"profileKey"` - AsID string `protobuf:"bytes,2,opt,name=AsID,proto3" json:"AsID"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ProfileKey string `protobuf:"bytes,1,opt,name=profileKey,proto3" json:"profileKey"` + AsID string `protobuf:"bytes,2,opt,name=AsID,proto3" json:"AsID"` } func (x *AsInfo) Reset() { *x = AsInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *AsInfo) String() string { @@ -424,7 +427,7 @@ func (*AsInfo) ProtoMessage() {} func (x *AsInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[0] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -454,29 +457,32 @@ func (x *AsInfo) GetAsID() string { } type MediaUserListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` - ManagerVal string `protobuf:"bytes,2,opt,name=managerVal,proto3" json:"managerVal"` - PlatformUserName string `protobuf:"bytes,3,opt,name=platformUserName,proto3" json:"platformUserName"` - PlatformID PlatformIDENUM `protobuf:"varint,4,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - Page int32 `protobuf:"varint,5,opt,name=page,proto3" json:"page"` - PageSize int32 `protobuf:"varint,6,opt,name=pageSize,proto3" json:"pageSize"` - ArtistUuid string `protobuf:"bytes,7,opt,name=artistUuid,proto3" json:"artistUuid"` - CreateStartDate string `protobuf:"bytes,8,opt,name=createStartDate,proto3" json:"createStartDate"` - CreateEndDate string `protobuf:"bytes,9,opt,name=createEndDate,proto3" json:"createEndDate"` - AuthStatus AuthStatusENUM `protobuf:"varint,10,opt,name=authStatus,proto3,enum=Cast.AuthStatusENUM" json:"authStatus"` - MediaUserID string `protobuf:"bytes,11,opt,name=mediaUserID,proto3" json:"mediaUserID"` - NeedStats bool `protobuf:"varint,12,opt,name=needStats,proto3" json:"needStats"` - NeedAsInfo bool `protobuf:"varint,13,opt,name=needAsInfo,proto3" json:"needAsInfo"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` + ManagerVal string `protobuf:"bytes,2,opt,name=managerVal,proto3" json:"managerVal"` + PlatformUserName string `protobuf:"bytes,3,opt,name=platformUserName,proto3" json:"platformUserName"` + PlatformID PlatformIDENUM `protobuf:"varint,4,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + Page int32 `protobuf:"varint,5,opt,name=page,proto3" json:"page"` + PageSize int32 `protobuf:"varint,6,opt,name=pageSize,proto3" json:"pageSize"` + ArtistUuid string `protobuf:"bytes,7,opt,name=artistUuid,proto3" json:"artistUuid"` + CreateStartDate string `protobuf:"bytes,8,opt,name=createStartDate,proto3" json:"createStartDate"` + CreateEndDate string `protobuf:"bytes,9,opt,name=createEndDate,proto3" json:"createEndDate"` + AuthStatus AuthStatusENUM `protobuf:"varint,10,opt,name=authStatus,proto3,enum=Cast.AuthStatusENUM" json:"authStatus"` + MediaUserID string `protobuf:"bytes,11,opt,name=mediaUserID,proto3" json:"mediaUserID"` + NeedStats bool `protobuf:"varint,12,opt,name=needStats,proto3" json:"needStats"` + NeedAsInfo bool `protobuf:"varint,13,opt,name=needAsInfo,proto3" json:"needAsInfo"` } func (x *MediaUserListReq) Reset() { *x = MediaUserListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaUserListReq) String() string { @@ -487,7 +493,7 @@ func (*MediaUserListReq) ProtoMessage() {} func (x *MediaUserListReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[1] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -594,33 +600,37 @@ func (x *MediaUserListReq) GetNeedAsInfo() bool { } type MediaUserInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - PlatformUserName string `protobuf:"bytes,1,opt,name=platformUserName,proto3" json:"platformUserName"` - PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` - ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` - ArtistUuid string `protobuf:"bytes,5,opt,name=artistUuid,proto3" json:"artistUuid"` - ManagerUserName string `protobuf:"bytes,6,opt,name=managerUserName,proto3" json:"managerUserName"` - ManagerUuid string `protobuf:"bytes,7,opt,name=managerUuid,proto3" json:"managerUuid"` - MediaAccountUuid string `protobuf:"bytes,8,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - CreatedDate string `protobuf:"bytes,9,opt,name=createdDate,proto3" json:"createdDate"` - AuthStatus AuthStatusENUM `protobuf:"varint,10,opt,name=authStatus,proto3,enum=Cast.AuthStatusENUM" json:"authStatus"` - PendingVideoCount int32 `protobuf:"varint,11,opt,name=pendingVideoCount,proto3" json:"pendingVideoCount"` - UploadedVideoCount int32 `protobuf:"varint,12,opt,name=uploadedVideoCount,proto3" json:"uploadedVideoCount"` - ReleasedVideoTotal int32 `protobuf:"varint,13,opt,name=releasedVideoTotal,proto3" json:"releasedVideoTotal"` - PendingPostCount int32 `protobuf:"varint,14,opt,name=pendingPostCount,proto3" json:"pendingPostCount"` - UploadedPostCount int32 `protobuf:"varint,15,opt,name=uploadedPostCount,proto3" json:"uploadedPostCount"` - ReleasedPostTotal int32 `protobuf:"varint,16,opt,name=releasedPostTotal,proto3" json:"releasedPostTotal"` - AsInfo *AsInfo `protobuf:"bytes,17,opt,name=asInfo,proto3" json:"asInfo"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlatformUserName string `protobuf:"bytes,1,opt,name=platformUserName,proto3" json:"platformUserName"` + PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` + ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` + ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` + ArtistUuid string `protobuf:"bytes,5,opt,name=artistUuid,proto3" json:"artistUuid"` + ManagerUserName string `protobuf:"bytes,6,opt,name=managerUserName,proto3" json:"managerUserName"` + ManagerUuid string `protobuf:"bytes,7,opt,name=managerUuid,proto3" json:"managerUuid"` + MediaAccountUuid string `protobuf:"bytes,8,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + CreatedDate string `protobuf:"bytes,9,opt,name=createdDate,proto3" json:"createdDate"` + AuthStatus AuthStatusENUM `protobuf:"varint,10,opt,name=authStatus,proto3,enum=Cast.AuthStatusENUM" json:"authStatus"` + PendingVideoCount int32 `protobuf:"varint,11,opt,name=pendingVideoCount,proto3" json:"pendingVideoCount"` + UploadedVideoCount int32 `protobuf:"varint,12,opt,name=uploadedVideoCount,proto3" json:"uploadedVideoCount"` + ReleasedVideoTotal int32 `protobuf:"varint,13,opt,name=releasedVideoTotal,proto3" json:"releasedVideoTotal"` + PendingPostCount int32 `protobuf:"varint,14,opt,name=pendingPostCount,proto3" json:"pendingPostCount"` + UploadedPostCount int32 `protobuf:"varint,15,opt,name=uploadedPostCount,proto3" json:"uploadedPostCount"` + ReleasedPostTotal int32 `protobuf:"varint,16,opt,name=releasedPostTotal,proto3" json:"releasedPostTotal"` + AsInfo *AsInfo `protobuf:"bytes,17,opt,name=asInfo,proto3" json:"asInfo"` + ArtistSubNum string `protobuf:"bytes,18,opt,name=artistSubNum,proto3" json:"artistSubNum"` } func (x *MediaUserInfo) Reset() { *x = MediaUserInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaUserInfo) String() string { @@ -631,7 +641,7 @@ func (*MediaUserInfo) ProtoMessage() {} func (x *MediaUserInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[2] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -765,19 +775,29 @@ func (x *MediaUserInfo) GetAsInfo() *AsInfo { return nil } +func (x *MediaUserInfo) GetArtistSubNum() string { + if x != nil { + return x.ArtistSubNum + } + return "" +} + type MediaUserListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*MediaUserInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*MediaUserInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` } func (x *MediaUserListResp) Reset() { *x = MediaUserListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaUserListResp) String() string { @@ -788,7 +808,7 @@ func (*MediaUserListResp) ProtoMessage() {} func (x *MediaUserListResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[3] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -818,27 +838,30 @@ func (x *MediaUserListResp) GetCount() int64 { } type UpdateMediaAccountReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PlatformID PlatformIDENUM `protobuf:"varint,1,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - PlatformUserName string `protobuf:"bytes,2,opt,name=platformUserName,proto3" json:"platformUserName"` - PlatformUserID string `protobuf:"bytes,3,opt,name=platformUserID,proto3" json:"platformUserID"` - ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` - ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` - ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` - MediaAccountUuid string `protobuf:"bytes,7,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - ManagerUuid string `protobuf:"bytes,8,opt,name=managerUuid,proto3" json:"managerUuid"` - ManagerUserName string `protobuf:"bytes,9,opt,name=managerUserName,proto3" json:"managerUserName"` - ArtistPhoneAreaCode string `protobuf:"bytes,10,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` - ArtistSubNum string `protobuf:"bytes,11,opt,name=artistSubNum,proto3" json:"artistSubNum"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlatformID PlatformIDENUM `protobuf:"varint,1,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + PlatformUserName string `protobuf:"bytes,2,opt,name=platformUserName,proto3" json:"platformUserName"` + PlatformUserID string `protobuf:"bytes,3,opt,name=platformUserID,proto3" json:"platformUserID"` + ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` + ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` + ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` + MediaAccountUuid string `protobuf:"bytes,7,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + ManagerUuid string `protobuf:"bytes,8,opt,name=managerUuid,proto3" json:"managerUuid"` + ManagerUserName string `protobuf:"bytes,9,opt,name=managerUserName,proto3" json:"managerUserName"` + ArtistPhoneAreaCode string `protobuf:"bytes,10,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` + ArtistSubNum string `protobuf:"bytes,11,opt,name=artistSubNum,proto3" json:"artistSubNum"` } func (x *UpdateMediaAccountReq) Reset() { *x = UpdateMediaAccountReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateMediaAccountReq) String() string { @@ -849,7 +872,7 @@ func (*UpdateMediaAccountReq) ProtoMessage() {} func (x *UpdateMediaAccountReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[4] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -942,17 +965,20 @@ func (x *UpdateMediaAccountReq) GetArtistSubNum() string { } type UpdateMediaAccountResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` } func (x *UpdateMediaAccountResp) Reset() { *x = UpdateMediaAccountResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateMediaAccountResp) String() string { @@ -963,7 +989,7 @@ func (*UpdateMediaAccountResp) ProtoMessage() {} func (x *UpdateMediaAccountResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[5] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -987,17 +1013,20 @@ func (x *UpdateMediaAccountResp) GetMediaAccountUuid() string { // UnbindManager type UnbindManagerReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` } func (x *UnbindManagerReq) Reset() { *x = UnbindManagerReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UnbindManagerReq) String() string { @@ -1008,7 +1037,7 @@ func (*UnbindManagerReq) ProtoMessage() {} func (x *UnbindManagerReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[6] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1031,17 +1060,20 @@ func (x *UnbindManagerReq) GetMediaAccountUuid() string { } type UnbindManagerResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - OldBindArtistUuid string `protobuf:"bytes,1,opt,name=oldBindArtistUuid,proto3" json:"oldBindArtistUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + OldBindArtistUuid string `protobuf:"bytes,1,opt,name=oldBindArtistUuid,proto3" json:"oldBindArtistUuid"` } func (x *UnbindManagerResp) Reset() { *x = UnbindManagerResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UnbindManagerResp) String() string { @@ -1052,7 +1084,7 @@ func (*UnbindManagerResp) ProtoMessage() {} func (x *UnbindManagerResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[7] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1075,19 +1107,22 @@ func (x *UnbindManagerResp) GetOldBindArtistUuid() string { } type BindManagerReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - ManagerUuid string `protobuf:"bytes,2,opt,name=managerUuid,proto3" json:"managerUuid"` - ManagerUserName string `protobuf:"bytes,3,opt,name=managerUserName,proto3" json:"managerUserName"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + ManagerUuid string `protobuf:"bytes,2,opt,name=managerUuid,proto3" json:"managerUuid"` + ManagerUserName string `protobuf:"bytes,3,opt,name=managerUserName,proto3" json:"managerUserName"` } func (x *BindManagerReq) Reset() { *x = BindManagerReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *BindManagerReq) String() string { @@ -1098,7 +1133,7 @@ func (*BindManagerReq) ProtoMessage() {} func (x *BindManagerReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[8] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1136,40 +1171,44 @@ func (x *BindManagerReq) GetManagerUserName() string { // UpdateWorkImage type UpdateWorkImageReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` - Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content"` - Images []string `protobuf:"bytes,3,rep,name=images,proto3" json:"images"` - MediaAccountUuids []string `protobuf:"bytes,4,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` - MediaAccountNames []string `protobuf:"bytes,5,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` - PlatformIDs []PlatformIDENUM `protobuf:"varint,6,rep,packed,name=platformIDs,proto3,enum=Cast.PlatformIDENUM" json:"platformIDs"` - PublishConfig1 *PublishConfig `protobuf:"bytes,7,opt,name=publishConfig1,proto3" json:"publishConfig1"` - PublishConfig2 *PublishConfig `protobuf:"bytes,8,opt,name=publishConfig2,proto3" json:"publishConfig2"` - PublishConfig3 *PublishConfig `protobuf:"bytes,9,opt,name=publishConfig3,proto3" json:"publishConfig3"` - PublishConfig4 *PublishConfig `protobuf:"bytes,10,opt,name=publishConfig4,proto3" json:"publishConfig4"` - Action string `protobuf:"bytes,11,opt,name=action,proto3" json:"action"` - WorkUuid string `protobuf:"bytes,12,opt,name=workUuid,proto3" json:"workUuid"` - ArtistUuid string `protobuf:"bytes,13,opt,name=artistUuid,proto3" json:"artistUuid"` - ArtistPhone string `protobuf:"bytes,14,opt,name=artistPhone,proto3" json:"artistPhone"` - ArtistName string `protobuf:"bytes,15,opt,name=artistName,proto3" json:"artistName"` - ArtistPhoneAreaCode string `protobuf:"bytes,16,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` - Source uint32 `protobuf:"varint,17,opt,name=source,proto3" json:"source"` - LineNo uint32 `protobuf:"varint,18,opt,name=lineNo,proto3" json:"lineNo"` - Remark string `protobuf:"bytes,19,opt,name=remark,proto3" json:"remark"` - Success bool `protobuf:"varint,20,opt,name=success,proto3" json:"success"` - ArtistSubNum string `protobuf:"bytes,21,opt,name=artistSubNum,proto3" json:"artistSubNum"` - ScriptUuid string `protobuf:"bytes,22,opt,name=scriptUuid,proto3" json:"scriptUuid"` - PromptUuids []string `protobuf:"bytes,23,rep,name=promptUuids,proto3" json:"promptUuids"` - PublishConfig5 *PublishConfig `protobuf:"bytes,24,opt,name=publishConfig5,proto3" json:"publishConfig5"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` + Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content"` + Images []string `protobuf:"bytes,3,rep,name=images,proto3" json:"images"` + MediaAccountUuids []string `protobuf:"bytes,4,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` + MediaAccountNames []string `protobuf:"bytes,5,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` + PlatformIDs []PlatformIDENUM `protobuf:"varint,6,rep,packed,name=platformIDs,proto3,enum=Cast.PlatformIDENUM" json:"platformIDs"` + PublishConfig1 *PublishConfig `protobuf:"bytes,7,opt,name=publishConfig1,proto3" json:"publishConfig1"` + PublishConfig2 *PublishConfig `protobuf:"bytes,8,opt,name=publishConfig2,proto3" json:"publishConfig2"` + PublishConfig3 *PublishConfig `protobuf:"bytes,9,opt,name=publishConfig3,proto3" json:"publishConfig3"` + PublishConfig4 *PublishConfig `protobuf:"bytes,10,opt,name=publishConfig4,proto3" json:"publishConfig4"` + Action string `protobuf:"bytes,11,opt,name=action,proto3" json:"action"` + WorkUuid string `protobuf:"bytes,12,opt,name=workUuid,proto3" json:"workUuid"` + ArtistUuid string `protobuf:"bytes,13,opt,name=artistUuid,proto3" json:"artistUuid"` + ArtistPhone string `protobuf:"bytes,14,opt,name=artistPhone,proto3" json:"artistPhone"` + ArtistName string `protobuf:"bytes,15,opt,name=artistName,proto3" json:"artistName"` + ArtistPhoneAreaCode string `protobuf:"bytes,16,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` + Source uint32 `protobuf:"varint,17,opt,name=source,proto3" json:"source"` + LineNo uint32 `protobuf:"varint,18,opt,name=lineNo,proto3" json:"lineNo"` + Remark string `protobuf:"bytes,19,opt,name=remark,proto3" json:"remark"` + Success bool `protobuf:"varint,20,opt,name=success,proto3" json:"success"` + ArtistSubNum string `protobuf:"bytes,21,opt,name=artistSubNum,proto3" json:"artistSubNum"` + ScriptUuid string `protobuf:"bytes,22,opt,name=scriptUuid,proto3" json:"scriptUuid"` + PromptUuids []string `protobuf:"bytes,23,rep,name=promptUuids,proto3" json:"promptUuids"` + PublishConfig5 *PublishConfig `protobuf:"bytes,24,opt,name=publishConfig5,proto3" json:"publishConfig5"` + From string `protobuf:"bytes,25,opt,name=from,proto3" json:"from"` } func (x *UpdateWorkImageReq) Reset() { *x = UpdateWorkImageReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkImageReq) String() string { @@ -1180,7 +1219,7 @@ func (*UpdateWorkImageReq) ProtoMessage() {} func (x *UpdateWorkImageReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[9] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1363,18 +1402,28 @@ func (x *UpdateWorkImageReq) GetPublishConfig5() *PublishConfig { return nil } +func (x *UpdateWorkImageReq) GetFrom() string { + if x != nil { + return x.From + } + return "" +} + type UpdateWorkImageResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` } func (x *UpdateWorkImageResp) Reset() { *x = UpdateWorkImageResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkImageResp) String() string { @@ -1385,7 +1434,7 @@ func (*UpdateWorkImageResp) ProtoMessage() {} func (x *UpdateWorkImageResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[10] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1408,22 +1457,25 @@ func (x *UpdateWorkImageResp) GetWorkUuid() string { } type PublishConfig struct { - state protoimpl.MessageState `protogen:"open.v1"` - ForbidComment uint32 `protobuf:"varint,1,opt,name=forbidComment,proto3" json:"forbidComment"` - PublicType uint32 `protobuf:"varint,2,opt,name=publicType,proto3" json:"publicType"` - CanJoin uint32 `protobuf:"varint,3,opt,name=canJoin,proto3" json:"canJoin"` - CanQuote uint32 `protobuf:"varint,4,opt,name=canQuote,proto3" json:"canQuote"` - CanComment uint32 `protobuf:"varint,5,opt,name=canComment,proto3" json:"canComment"` - IsAI uint32 `protobuf:"varint,6,opt,name=isAI,proto3" json:"isAI"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ForbidComment uint32 `protobuf:"varint,1,opt,name=forbidComment,proto3" json:"forbidComment"` + PublicType uint32 `protobuf:"varint,2,opt,name=publicType,proto3" json:"publicType"` + CanJoin uint32 `protobuf:"varint,3,opt,name=canJoin,proto3" json:"canJoin"` + CanQuote uint32 `protobuf:"varint,4,opt,name=canQuote,proto3" json:"canQuote"` + CanComment uint32 `protobuf:"varint,5,opt,name=canComment,proto3" json:"canComment"` + IsAI uint32 `protobuf:"varint,6,opt,name=isAI,proto3" json:"isAI"` } func (x *PublishConfig) Reset() { *x = PublishConfig{} - mi := &file_pb_fiee_cast_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishConfig) String() string { @@ -1434,7 +1486,7 @@ func (*PublishConfig) ProtoMessage() {} func (x *PublishConfig) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[11] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1493,39 +1545,42 @@ func (x *PublishConfig) GetIsAI() uint32 { // UpdateWorkVideo type UpdateWorkVideoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` - Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content"` - VideoUrl string `protobuf:"bytes,3,opt,name=videoUrl,proto3" json:"videoUrl"` - CoverUrl string `protobuf:"bytes,4,opt,name=coverUrl,proto3" json:"coverUrl"` - MediaAccountUuids []string `protobuf:"bytes,5,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` - MediaAccountNames []string `protobuf:"bytes,6,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` - PlatformIDs []PlatformIDENUM `protobuf:"varint,7,rep,packed,name=platformIDs,proto3,enum=Cast.PlatformIDENUM" json:"platformIDs"` - PublishConfig1 *PublishConfig `protobuf:"bytes,8,opt,name=publishConfig1,proto3" json:"publishConfig1"` - PublishConfig2 *PublishConfig `protobuf:"bytes,9,opt,name=publishConfig2,proto3" json:"publishConfig2"` - PublishConfig3 *PublishConfig `protobuf:"bytes,10,opt,name=publishConfig3,proto3" json:"publishConfig3"` - PublishConfig4 *PublishConfig `protobuf:"bytes,11,opt,name=publishConfig4,proto3" json:"publishConfig4"` - Action string `protobuf:"bytes,12,opt,name=action,proto3" json:"action"` - WorkUuid string `protobuf:"bytes,13,opt,name=workUuid,proto3" json:"workUuid"` - ArtistUuid string `protobuf:"bytes,14,opt,name=artistUuid,proto3" json:"artistUuid"` - ArtistPhone string `protobuf:"bytes,15,opt,name=artistPhone,proto3" json:"artistPhone"` - ArtistName string `protobuf:"bytes,16,opt,name=artistName,proto3" json:"artistName"` - ArtistPhoneAreaCode string `protobuf:"bytes,17,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` - Source uint32 `protobuf:"varint,18,opt,name=source,proto3" json:"source"` - CoverTimestampMs uint64 `protobuf:"varint,19,opt,name=coverTimestampMs,proto3" json:"coverTimestampMs"` - AutoPublish AutoPublishENUM `protobuf:"varint,20,opt,name=autoPublish,proto3,enum=Cast.AutoPublishENUM" json:"autoPublish"` - ScriptUuid string `protobuf:"bytes,21,opt,name=scriptUuid,proto3" json:"scriptUuid"` - ArtistSubNum string `protobuf:"bytes,22,opt,name=artistSubNum,proto3" json:"artistSubNum"` - PublishConfig5 *PublishConfig `protobuf:"bytes,24,opt,name=publishConfig5,proto3" json:"publishConfig5"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` + Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content"` + VideoUrl string `protobuf:"bytes,3,opt,name=videoUrl,proto3" json:"videoUrl"` + CoverUrl string `protobuf:"bytes,4,opt,name=coverUrl,proto3" json:"coverUrl"` + MediaAccountUuids []string `protobuf:"bytes,5,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` + MediaAccountNames []string `protobuf:"bytes,6,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` + PlatformIDs []PlatformIDENUM `protobuf:"varint,7,rep,packed,name=platformIDs,proto3,enum=Cast.PlatformIDENUM" json:"platformIDs"` + PublishConfig1 *PublishConfig `protobuf:"bytes,8,opt,name=publishConfig1,proto3" json:"publishConfig1"` + PublishConfig2 *PublishConfig `protobuf:"bytes,9,opt,name=publishConfig2,proto3" json:"publishConfig2"` + PublishConfig3 *PublishConfig `protobuf:"bytes,10,opt,name=publishConfig3,proto3" json:"publishConfig3"` + PublishConfig4 *PublishConfig `protobuf:"bytes,11,opt,name=publishConfig4,proto3" json:"publishConfig4"` + Action string `protobuf:"bytes,12,opt,name=action,proto3" json:"action"` + WorkUuid string `protobuf:"bytes,13,opt,name=workUuid,proto3" json:"workUuid"` + ArtistUuid string `protobuf:"bytes,14,opt,name=artistUuid,proto3" json:"artistUuid"` + ArtistPhone string `protobuf:"bytes,15,opt,name=artistPhone,proto3" json:"artistPhone"` + ArtistName string `protobuf:"bytes,16,opt,name=artistName,proto3" json:"artistName"` + ArtistPhoneAreaCode string `protobuf:"bytes,17,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` + Source uint32 `protobuf:"varint,18,opt,name=source,proto3" json:"source"` + CoverTimestampMs uint64 `protobuf:"varint,19,opt,name=coverTimestampMs,proto3" json:"coverTimestampMs"` + AutoPublish AutoPublishENUM `protobuf:"varint,20,opt,name=autoPublish,proto3,enum=Cast.AutoPublishENUM" json:"autoPublish"` + ScriptUuid string `protobuf:"bytes,21,opt,name=scriptUuid,proto3" json:"scriptUuid"` + ArtistSubNum string `protobuf:"bytes,22,opt,name=artistSubNum,proto3" json:"artistSubNum"` + PublishConfig5 *PublishConfig `protobuf:"bytes,24,opt,name=publishConfig5,proto3" json:"publishConfig5"` } func (x *UpdateWorkVideoReq) Reset() { *x = UpdateWorkVideoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkVideoReq) String() string { @@ -1536,7 +1591,7 @@ func (*UpdateWorkVideoReq) ProtoMessage() {} func (x *UpdateWorkVideoReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[12] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1713,17 +1768,20 @@ func (x *UpdateWorkVideoReq) GetPublishConfig5() *PublishConfig { } type UpdateWorkVideoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` } func (x *UpdateWorkVideoResp) Reset() { *x = UpdateWorkVideoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkVideoResp) String() string { @@ -1734,7 +1792,7 @@ func (*UpdateWorkVideoResp) ProtoMessage() {} func (x *UpdateWorkVideoResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[13] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1757,19 +1815,22 @@ func (x *UpdateWorkVideoResp) GetWorkUuid() string { } type MediaInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - PlatformUserName string `protobuf:"bytes,3,opt,name=platformUserName,proto3" json:"platformUserName"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + PlatformUserName string `protobuf:"bytes,3,opt,name=platformUserName,proto3" json:"platformUserName"` } func (x *MediaInfoReq) Reset() { *x = MediaInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[14] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[14] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaInfoReq) String() string { @@ -1780,7 +1841,7 @@ func (*MediaInfoReq) ProtoMessage() {} func (x *MediaInfoReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[14] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1817,17 +1878,20 @@ func (x *MediaInfoReq) GetPlatformUserName() string { } type MediaInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Info *MediaUserInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Info *MediaUserInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info"` } func (x *MediaInfoResp) Reset() { *x = MediaInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[15] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[15] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaInfoResp) String() string { @@ -1838,7 +1902,7 @@ func (*MediaInfoResp) ProtoMessage() {} func (x *MediaInfoResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[15] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1861,18 +1925,21 @@ func (x *MediaInfoResp) GetInfo() *MediaUserInfo { } type MediaInfoByPlatformReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` } func (x *MediaInfoByPlatformReq) Reset() { *x = MediaInfoByPlatformReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[16] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[16] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaInfoByPlatformReq) String() string { @@ -1883,7 +1950,7 @@ func (*MediaInfoByPlatformReq) ProtoMessage() {} func (x *MediaInfoByPlatformReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[16] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1913,17 +1980,20 @@ func (x *MediaInfoByPlatformReq) GetPlatformID() PlatformIDENUM { } type MediaInfoByPlatformResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Info *MediaUserInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Info *MediaUserInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info"` } func (x *MediaInfoByPlatformResp) Reset() { *x = MediaInfoByPlatformResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[17] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[17] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaInfoByPlatformResp) String() string { @@ -1934,7 +2004,7 @@ func (*MediaInfoByPlatformResp) ProtoMessage() {} func (x *MediaInfoByPlatformResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[17] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1957,48 +2027,51 @@ func (x *MediaInfoByPlatformResp) GetInfo() *MediaUserInfo { } type WorkListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` - PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - WorkCategory uint32 `protobuf:"varint,3,opt,name=workCategory,proto3" json:"workCategory"` - SubmitStartTime string `protobuf:"bytes,4,opt,name=submitStartTime,proto3" json:"submitStartTime"` - SubmitEndTime string `protobuf:"bytes,5,opt,name=submitEndTime,proto3" json:"submitEndTime"` - StatusUpdateTimeStart string `protobuf:"bytes,6,opt,name=statusUpdateTimeStart,proto3" json:"statusUpdateTimeStart"` - StatusUpdateTimeEnd string `protobuf:"bytes,7,opt,name=statusUpdateTimeEnd,proto3" json:"statusUpdateTimeEnd"` - Title string `protobuf:"bytes,8,opt,name=title,proto3" json:"title"` - WorkStatus uint32 `protobuf:"varint,9,opt,name=workStatus,proto3" json:"workStatus"` - MediaAccountUuid string `protobuf:"bytes,10,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - ManagerUserVal string `protobuf:"bytes,11,opt,name=managerUserVal,proto3" json:"managerUserVal"` - Page int32 `protobuf:"varint,12,opt,name=page,proto3" json:"page"` - PageSize int32 `protobuf:"varint,13,opt,name=pageSize,proto3" json:"pageSize"` - MediaAccountUuids []string `protobuf:"bytes,14,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` - CostType int32 `protobuf:"varint,15,opt,name=costType,proto3" json:"costType"` - ScriptUuid string `protobuf:"bytes,16,opt,name=scriptUuid,proto3" json:"scriptUuid"` - ArtistSubNum string `protobuf:"bytes,17,opt,name=artistSubNum,proto3" json:"artistSubNum"` - TiktokStatus uint32 `protobuf:"varint,18,opt,name=tiktokStatus,proto3" json:"tiktokStatus"` - InsStatus uint32 `protobuf:"varint,19,opt,name=insStatus,proto3" json:"insStatus"` - DmStatus uint32 `protobuf:"varint,20,opt,name=dmStatus,proto3" json:"dmStatus"` - StartTime1 string `protobuf:"bytes,21,opt,name=startTime1,proto3" json:"startTime1"` - EndTime1 string `protobuf:"bytes,22,opt,name=endTime1,proto3" json:"endTime1"` - StartTime4 string `protobuf:"bytes,23,opt,name=startTime4,proto3" json:"startTime4"` - EndTime4 string `protobuf:"bytes,24,opt,name=endTime4,proto3" json:"endTime4"` - StartTime9 string `protobuf:"bytes,25,opt,name=startTime9,proto3" json:"startTime9"` - EndTime9 string `protobuf:"bytes,26,opt,name=endTime9,proto3" json:"endTime9"` - StartTime6 string `protobuf:"bytes,27,opt,name=startTime6,proto3" json:"startTime6"` - EndTime6 string `protobuf:"bytes,28,opt,name=endTime6,proto3" json:"endTime6"` - NeedPublishMediaID bool `protobuf:"varint,29,opt,name=NeedPublishMediaID,proto3" json:"NeedPublishMediaID"` - YoutubeStatus uint32 `protobuf:"varint,30,opt,name=youtubeStatus,proto3" json:"youtubeStatus"` - BlueskyStatus uint32 `protobuf:"varint,31,opt,name=blueskyStatus,proto3" json:"blueskyStatus"` - ArtistUuid string `protobuf:"bytes,32,opt,name=artistUuid,proto3" json:"artistUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` + PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` + WorkCategory uint32 `protobuf:"varint,3,opt,name=workCategory,proto3" json:"workCategory"` + SubmitStartTime string `protobuf:"bytes,4,opt,name=submitStartTime,proto3" json:"submitStartTime"` + SubmitEndTime string `protobuf:"bytes,5,opt,name=submitEndTime,proto3" json:"submitEndTime"` + StatusUpdateTimeStart string `protobuf:"bytes,6,opt,name=statusUpdateTimeStart,proto3" json:"statusUpdateTimeStart"` + StatusUpdateTimeEnd string `protobuf:"bytes,7,opt,name=statusUpdateTimeEnd,proto3" json:"statusUpdateTimeEnd"` + Title string `protobuf:"bytes,8,opt,name=title,proto3" json:"title"` + WorkStatus uint32 `protobuf:"varint,9,opt,name=workStatus,proto3" json:"workStatus"` + MediaAccountUuid string `protobuf:"bytes,10,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + ManagerUserVal string `protobuf:"bytes,11,opt,name=managerUserVal,proto3" json:"managerUserVal"` + Page int32 `protobuf:"varint,12,opt,name=page,proto3" json:"page"` + PageSize int32 `protobuf:"varint,13,opt,name=pageSize,proto3" json:"pageSize"` + MediaAccountUuids []string `protobuf:"bytes,14,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` + CostType int32 `protobuf:"varint,15,opt,name=costType,proto3" json:"costType"` + ScriptUuid string `protobuf:"bytes,16,opt,name=scriptUuid,proto3" json:"scriptUuid"` + ArtistSubNum string `protobuf:"bytes,17,opt,name=artistSubNum,proto3" json:"artistSubNum"` + TiktokStatus uint32 `protobuf:"varint,18,opt,name=tiktokStatus,proto3" json:"tiktokStatus"` + InsStatus uint32 `protobuf:"varint,19,opt,name=insStatus,proto3" json:"insStatus"` + DmStatus uint32 `protobuf:"varint,20,opt,name=dmStatus,proto3" json:"dmStatus"` + StartTime1 string `protobuf:"bytes,21,opt,name=startTime1,proto3" json:"startTime1"` + EndTime1 string `protobuf:"bytes,22,opt,name=endTime1,proto3" json:"endTime1"` + StartTime4 string `protobuf:"bytes,23,opt,name=startTime4,proto3" json:"startTime4"` + EndTime4 string `protobuf:"bytes,24,opt,name=endTime4,proto3" json:"endTime4"` + StartTime9 string `protobuf:"bytes,25,opt,name=startTime9,proto3" json:"startTime9"` + EndTime9 string `protobuf:"bytes,26,opt,name=endTime9,proto3" json:"endTime9"` + StartTime6 string `protobuf:"bytes,27,opt,name=startTime6,proto3" json:"startTime6"` + EndTime6 string `protobuf:"bytes,28,opt,name=endTime6,proto3" json:"endTime6"` + NeedPublishMediaID bool `protobuf:"varint,29,opt,name=NeedPublishMediaID,proto3" json:"NeedPublishMediaID"` + YoutubeStatus uint32 `protobuf:"varint,30,opt,name=youtubeStatus,proto3" json:"youtubeStatus"` + BlueskyStatus uint32 `protobuf:"varint,31,opt,name=blueskyStatus,proto3" json:"blueskyStatus"` + ArtistUuid string `protobuf:"bytes,32,opt,name=artistUuid,proto3" json:"artistUuid"` } func (x *WorkListReq) Reset() { *x = WorkListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[18] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[18] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkListReq) String() string { @@ -2009,7 +2082,7 @@ func (*WorkListReq) ProtoMessage() {} func (x *WorkListReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[18] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2249,18 +2322,21 @@ func (x *WorkListReq) GetArtistUuid() string { } type WorkListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*WorkListResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*WorkListResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` } func (x *WorkListResp) Reset() { *x = WorkListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[19] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[19] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkListResp) String() string { @@ -2271,7 +2347,7 @@ func (*WorkListResp) ProtoMessage() {} func (x *WorkListResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[19] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2301,17 +2377,20 @@ func (x *WorkListResp) GetCount() int64 { } type WorkDetailReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` } func (x *WorkDetailReq) Reset() { *x = WorkDetailReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[20] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[20] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkDetailReq) String() string { @@ -2322,7 +2401,7 @@ func (*WorkDetailReq) ProtoMessage() {} func (x *WorkDetailReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[20] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2345,24 +2424,27 @@ func (x *WorkDetailReq) GetWorkUuid() string { } type WorkLogInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` - OperatorName string `protobuf:"bytes,4,opt,name=operatorName,proto3" json:"operatorName"` - OperatorID string `protobuf:"bytes,5,opt,name=operatorID,proto3" json:"operatorID"` - UpdateTime string `protobuf:"bytes,6,opt,name=updateTime,proto3" json:"updateTime"` - ExtraData string `protobuf:"bytes,7,opt,name=extraData,proto3" json:"extraData"` - WorkStatus uint32 `protobuf:"varint,8,opt,name=workStatus,proto3" json:"workStatus"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` + OperatorName string `protobuf:"bytes,4,opt,name=operatorName,proto3" json:"operatorName"` + OperatorID string `protobuf:"bytes,5,opt,name=operatorID,proto3" json:"operatorID"` + UpdateTime string `protobuf:"bytes,6,opt,name=updateTime,proto3" json:"updateTime"` + ExtraData string `protobuf:"bytes,7,opt,name=extraData,proto3" json:"extraData"` + WorkStatus uint32 `protobuf:"varint,8,opt,name=workStatus,proto3" json:"workStatus"` } func (x *WorkLogInfo) Reset() { *x = WorkLogInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[21] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[21] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkLogInfo) String() string { @@ -2373,7 +2455,7 @@ func (*WorkLogInfo) ProtoMessage() {} func (x *WorkLogInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[21] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2445,7 +2527,10 @@ func (x *WorkLogInfo) GetWorkStatus() uint32 { } type WorkDetailResp struct { - state protoimpl.MessageState `protogen:"open.v1"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` @@ -2463,7 +2548,7 @@ type WorkDetailResp struct { ApprovalID string `protobuf:"bytes,15,opt,name=approvalID,proto3" json:"approvalID"` WorkLogData []*WorkLogInfo `protobuf:"bytes,16,rep,name=WorkLogData,proto3" json:"WorkLogData"` WorkCategory uint32 `protobuf:"varint,17,opt,name=workCategory,proto3" json:"workCategory"` - MediaAccData map[string]*MediaUserInfo `protobuf:"bytes,18,rep,name=mediaAccData,proto3" json:"mediaAccData" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` + MediaAccData map[string]*MediaUserInfo `protobuf:"bytes,18,rep,name=mediaAccData,proto3" json:"mediaAccData" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` CoverTimestampMs uint64 `protobuf:"varint,19,opt,name=coverTimestampMs,proto3" json:"coverTimestampMs"` ScriptUuid string `protobuf:"bytes,20,opt,name=scriptUuid,proto3" json:"scriptUuid"` ArtistUuid string `protobuf:"bytes,21,opt,name=artistUuid,proto3" json:"artistUuid"` @@ -2474,15 +2559,15 @@ type WorkDetailResp struct { ArtistSubNum string `protobuf:"bytes,26,opt,name=artistSubNum,proto3" json:"artistSubNum"` ScriptInfo string `protobuf:"bytes,27,opt,name=scriptInfo,proto3" json:"scriptInfo"` PublishConfig5 *PublishConfig `protobuf:"bytes,28,opt,name=publishConfig5,proto3" json:"publishConfig5"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache } func (x *WorkDetailResp) Reset() { *x = WorkDetailResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[22] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[22] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkDetailResp) String() string { @@ -2493,7 +2578,7 @@ func (*WorkDetailResp) ProtoMessage() {} func (x *WorkDetailResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[22] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2684,26 +2769,29 @@ func (x *WorkDetailResp) GetPublishConfig5() *PublishConfig { } type UpdateStatusReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` - WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` - ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` - ConfirmRemark string `protobuf:"bytes,4,opt,name=confirmRemark,proto3" json:"confirmRemark"` - ConfirmStatus uint32 `protobuf:"varint,5,opt,name=confirmStatus,proto3" json:"confirmStatus"` - ApprovalReply string `protobuf:"bytes,6,opt,name=approvalReply,proto3" json:"approvalReply"` - AutoPublish AutoPublishENUM `protobuf:"varint,7,opt,name=autoPublish,proto3,enum=Cast.AutoPublishENUM" json:"autoPublish"` - CostType uint32 `protobuf:"varint,8,opt,name=costType,proto3" json:"costType"` - ConfirmFailType ConfirmFailENUM `protobuf:"varint,9,opt,name=confirmFailType,proto3,enum=Cast.ConfirmFailENUM" json:"confirmFailType"` - ApprovalTime string `protobuf:"bytes,10,opt,name=approvalTime,proto3" json:"approvalTime"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` + WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` + ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` + ConfirmRemark string `protobuf:"bytes,4,opt,name=confirmRemark,proto3" json:"confirmRemark"` + ConfirmStatus uint32 `protobuf:"varint,5,opt,name=confirmStatus,proto3" json:"confirmStatus"` + ApprovalReply string `protobuf:"bytes,6,opt,name=approvalReply,proto3" json:"approvalReply"` + AutoPublish AutoPublishENUM `protobuf:"varint,7,opt,name=autoPublish,proto3,enum=Cast.AutoPublishENUM" json:"autoPublish"` + CostType uint32 `protobuf:"varint,8,opt,name=costType,proto3" json:"costType"` + ConfirmFailType ConfirmFailENUM `protobuf:"varint,9,opt,name=confirmFailType,proto3,enum=Cast.ConfirmFailENUM" json:"confirmFailType"` + ApprovalTime string `protobuf:"bytes,10,opt,name=approvalTime,proto3" json:"approvalTime"` } func (x *UpdateStatusReq) Reset() { *x = UpdateStatusReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[23] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[23] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateStatusReq) String() string { @@ -2714,7 +2802,7 @@ func (*UpdateStatusReq) ProtoMessage() {} func (x *UpdateStatusReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[23] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2800,17 +2888,20 @@ func (x *UpdateStatusReq) GetApprovalTime() string { } type MediaAccountsReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` } func (x *MediaAccountsReq) Reset() { *x = MediaAccountsReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[24] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[24] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaAccountsReq) String() string { @@ -2821,7 +2912,7 @@ func (*MediaAccountsReq) ProtoMessage() {} func (x *MediaAccountsReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[24] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2844,17 +2935,20 @@ func (x *MediaAccountsReq) GetArtistUuid() string { } type MediaAccountsResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*MediaAccountsResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*MediaAccountsResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` } func (x *MediaAccountsResp) Reset() { *x = MediaAccountsResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[25] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[25] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaAccountsResp) String() string { @@ -2865,7 +2959,7 @@ func (*MediaAccountsResp) ProtoMessage() {} func (x *MediaAccountsResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[25] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2888,19 +2982,22 @@ func (x *MediaAccountsResp) GetData() []*MediaAccountsResp_Info { } type MediaWorksReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - Page int32 `protobuf:"varint,2,opt,name=page,proto3" json:"page"` - PageSize int32 `protobuf:"varint,3,opt,name=pageSize,proto3" json:"pageSize"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + Page int32 `protobuf:"varint,2,opt,name=page,proto3" json:"page"` + PageSize int32 `protobuf:"varint,3,opt,name=pageSize,proto3" json:"pageSize"` } func (x *MediaWorksReq) Reset() { *x = MediaWorksReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[26] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[26] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaWorksReq) String() string { @@ -2911,7 +3008,7 @@ func (*MediaWorksReq) ProtoMessage() {} func (x *MediaWorksReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[26] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -2948,18 +3045,21 @@ func (x *MediaWorksReq) GetPageSize() int32 { } type MediaWorksResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count"` - Data []*MediaWorksResp_Info `protobuf:"bytes,2,rep,name=data,proto3" json:"data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count"` + Data []*MediaWorksResp_Info `protobuf:"bytes,2,rep,name=data,proto3" json:"data"` } func (x *MediaWorksResp) Reset() { *x = MediaWorksResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[27] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[27] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaWorksResp) String() string { @@ -2970,7 +3070,7 @@ func (*MediaWorksResp) ProtoMessage() {} func (x *MediaWorksResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[27] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3000,17 +3100,20 @@ func (x *MediaWorksResp) GetData() []*MediaWorksResp_Info { } type PublishReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuids []string `protobuf:"bytes,1,rep,name=workUuids,proto3" json:"workUuids"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuids []string `protobuf:"bytes,1,rep,name=workUuids,proto3" json:"workUuids"` } func (x *PublishReq) Reset() { *x = PublishReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[28] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[28] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishReq) String() string { @@ -3021,7 +3124,7 @@ func (*PublishReq) ProtoMessage() {} func (x *PublishReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[28] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3044,17 +3147,20 @@ func (x *PublishReq) GetWorkUuids() []string { } type PublishResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*PublishResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*PublishResp_Info `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` } func (x *PublishResp) Reset() { *x = PublishResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[29] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishResp) String() string { @@ -3065,7 +3171,7 @@ func (*PublishResp) ProtoMessage() {} func (x *PublishResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[29] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3088,18 +3194,21 @@ func (x *PublishResp) GetData() []*PublishResp_Info { } type RePublishReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuids []string `protobuf:"bytes,1,rep,name=workUuids,proto3" json:"workUuids"` - MediaAccountUuids []string `protobuf:"bytes,2,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuids []string `protobuf:"bytes,1,rep,name=workUuids,proto3" json:"workUuids"` + MediaAccountUuids []string `protobuf:"bytes,2,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` } func (x *RePublishReq) Reset() { *x = RePublishReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[30] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RePublishReq) String() string { @@ -3110,7 +3219,7 @@ func (*RePublishReq) ProtoMessage() {} func (x *RePublishReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[30] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3140,18 +3249,21 @@ func (x *RePublishReq) GetMediaAccountUuids() []string { } type RePublishResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - WorkUuids []string `protobuf:"bytes,3,rep,name=workUuids,proto3" json:"workUuids"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + WorkUuids []string `protobuf:"bytes,3,rep,name=workUuids,proto3" json:"workUuids"` } func (x *RePublishResp) Reset() { *x = RePublishResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[31] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[31] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RePublishResp) String() string { @@ -3162,7 +3274,7 @@ func (*RePublishResp) ProtoMessage() {} func (x *RePublishResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[31] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3192,17 +3304,20 @@ func (x *RePublishResp) GetWorkUuids() []string { } type DelWorkReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` } func (x *DelWorkReq) Reset() { *x = DelWorkReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[32] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[32] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DelWorkReq) String() string { @@ -3213,7 +3328,7 @@ func (*DelWorkReq) ProtoMessage() {} func (x *DelWorkReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[32] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3236,17 +3351,20 @@ func (x *DelWorkReq) GetWorkUuid() string { } type WorkInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` } func (x *WorkInfoReq) Reset() { *x = WorkInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[33] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[33] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkInfoReq) String() string { @@ -3257,7 +3375,7 @@ func (*WorkInfoReq) ProtoMessage() {} func (x *WorkInfoReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[33] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3280,22 +3398,25 @@ func (x *WorkInfoReq) GetWorkUuid() string { } type WorkInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkStatus uint32 `protobuf:"varint,1,opt,name=workStatus,proto3" json:"workStatus"` - ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` - ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` - ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` - ArtistPhoneAreaCode string `protobuf:"bytes,5,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` - WorkCategory uint32 `protobuf:"varint,6,opt,name=workCategory,proto3" json:"workCategory"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkStatus uint32 `protobuf:"varint,1,opt,name=workStatus,proto3" json:"workStatus"` + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` + ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` + ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` + ArtistPhoneAreaCode string `protobuf:"bytes,5,opt,name=artistPhoneAreaCode,proto3" json:"artistPhoneAreaCode"` + WorkCategory uint32 `protobuf:"varint,6,opt,name=workCategory,proto3" json:"workCategory"` } func (x *WorkInfoResp) Reset() { *x = WorkInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[34] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[34] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkInfoResp) String() string { @@ -3306,7 +3427,7 @@ func (*WorkInfoResp) ProtoMessage() {} func (x *WorkInfoResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[34] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3364,17 +3485,20 @@ func (x *WorkInfoResp) GetWorkCategory() uint32 { } type ArtistInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` } func (x *ArtistInfoReq) Reset() { *x = ArtistInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[35] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistInfoReq) String() string { @@ -3385,7 +3509,7 @@ func (*ArtistInfoReq) ProtoMessage() {} func (x *ArtistInfoReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[35] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3408,22 +3532,26 @@ func (x *ArtistInfoReq) GetArtistUuid() string { } type ArtistInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - TikTokEffectiveCount uint32 `protobuf:"varint,1,opt,name=TikTokEffectiveCount,proto3" json:"TikTokEffectiveCount"` - YouTubeEffectiveCount uint32 `protobuf:"varint,2,opt,name=YouTubeEffectiveCount,proto3" json:"YouTubeEffectiveCount"` - InsEffectiveCount uint32 `protobuf:"varint,3,opt,name=InsEffectiveCount,proto3" json:"InsEffectiveCount"` - DMEffectiveCount uint32 `protobuf:"varint,4,opt,name=DMEffectiveCount,proto3" json:"DMEffectiveCount"` - ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` - SubNum string `protobuf:"bytes,6,opt,name=subNum,proto3" json:"subNum"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TikTokEffectiveCount uint32 `protobuf:"varint,1,opt,name=TikTokEffectiveCount,proto3" json:"TikTokEffectiveCount"` + YouTubeEffectiveCount uint32 `protobuf:"varint,2,opt,name=YouTubeEffectiveCount,proto3" json:"YouTubeEffectiveCount"` + InsEffectiveCount uint32 `protobuf:"varint,3,opt,name=InsEffectiveCount,proto3" json:"InsEffectiveCount"` + DMEffectiveCount uint32 `protobuf:"varint,4,opt,name=DMEffectiveCount,proto3" json:"DMEffectiveCount"` + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` + SubNum string `protobuf:"bytes,6,opt,name=subNum,proto3" json:"subNum"` + BlueskyEffectiveCount uint32 `protobuf:"varint,7,opt,name=BlueskyEffectiveCount,proto3" json:"BlueskyEffectiveCount"` } func (x *ArtistInfoResp) Reset() { *x = ArtistInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[36] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[36] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistInfoResp) String() string { @@ -3434,7 +3562,7 @@ func (*ArtistInfoResp) ProtoMessage() {} func (x *ArtistInfoResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[36] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3491,18 +3619,28 @@ func (x *ArtistInfoResp) GetSubNum() string { return "" } +func (x *ArtistInfoResp) GetBlueskyEffectiveCount() uint32 { + if x != nil { + return x.BlueskyEffectiveCount + } + return 0 +} + type ImportWorkBatchReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ImageWorks []*UpdateWorkImageReq `protobuf:"bytes,1,rep,name=imageWorks,proto3" json:"imageWorks"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ImageWorks []*UpdateWorkImageReq `protobuf:"bytes,1,rep,name=imageWorks,proto3" json:"imageWorks"` } func (x *ImportWorkBatchReq) Reset() { *x = ImportWorkBatchReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[37] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ImportWorkBatchReq) String() string { @@ -3513,7 +3651,7 @@ func (*ImportWorkBatchReq) ProtoMessage() {} func (x *ImportWorkBatchReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[37] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3536,19 +3674,22 @@ func (x *ImportWorkBatchReq) GetImageWorks() []*UpdateWorkImageReq { } type ImportWorkBatchResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - ImageWorks []*UpdateWorkImageReq `protobuf:"bytes,1,rep,name=imageWorks,proto3" json:"imageWorks"` - SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` - FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ImageWorks []*UpdateWorkImageReq `protobuf:"bytes,1,rep,name=imageWorks,proto3" json:"imageWorks"` + SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` + FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` } func (x *ImportWorkBatchResp) Reset() { *x = ImportWorkBatchResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[38] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[38] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ImportWorkBatchResp) String() string { @@ -3559,7 +3700,7 @@ func (*ImportWorkBatchResp) ProtoMessage() {} func (x *ImportWorkBatchResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[38] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3596,25 +3737,28 @@ func (x *ImportWorkBatchResp) GetFailCount() int32 { } type PlatformInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - MediaAccountUuid string `protobuf:"bytes,2,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` - PublishType uint32 `protobuf:"varint,4,opt,name=publishType,proto3" json:"publishType"` - PublishResp string `protobuf:"bytes,5,opt,name=publishResp,proto3" json:"publishResp"` - PublishMediaId string `protobuf:"bytes,6,opt,name=publishMediaId,proto3" json:"publishMediaId"` - PublishStatus PublishStatusENUM `protobuf:"varint,7,opt,name=publishStatus,proto3,enum=Cast.PublishStatusENUM" json:"publishStatus"` - Remark string `protobuf:"bytes,8,opt,name=remark,proto3" json:"remark"` - PlatformUuid string `protobuf:"bytes,9,opt,name=platformUuid,proto3" json:"platformUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + MediaAccountUuid string `protobuf:"bytes,2,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` + PublishType uint32 `protobuf:"varint,4,opt,name=publishType,proto3" json:"publishType"` + PublishResp string `protobuf:"bytes,5,opt,name=publishResp,proto3" json:"publishResp"` + PublishMediaId string `protobuf:"bytes,6,opt,name=publishMediaId,proto3" json:"publishMediaId"` + PublishStatus PublishStatusENUM `protobuf:"varint,7,opt,name=publishStatus,proto3,enum=Cast.PublishStatusENUM" json:"publishStatus"` + Remark string `protobuf:"bytes,8,opt,name=remark,proto3" json:"remark"` + PlatformUuid string `protobuf:"bytes,9,opt,name=platformUuid,proto3" json:"platformUuid"` } func (x *PlatformInfo) Reset() { *x = PlatformInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[39] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[39] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PlatformInfo) String() string { @@ -3625,7 +3769,7 @@ func (*PlatformInfo) ProtoMessage() {} func (x *PlatformInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[39] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3704,17 +3848,20 @@ func (x *PlatformInfo) GetPlatformUuid() string { } type UpdateWorkPlatformInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PlatformInfoData []*PlatformInfo `protobuf:"bytes,1,rep,name=PlatformInfoData,proto3" json:"PlatformInfoData"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlatformInfoData []*PlatformInfo `protobuf:"bytes,1,rep,name=PlatformInfoData,proto3" json:"PlatformInfoData"` } func (x *UpdateWorkPlatformInfoReq) Reset() { *x = UpdateWorkPlatformInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[40] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[40] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkPlatformInfoReq) String() string { @@ -3725,7 +3872,7 @@ func (*UpdateWorkPlatformInfoReq) ProtoMessage() {} func (x *UpdateWorkPlatformInfoReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[40] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3748,17 +3895,20 @@ func (x *UpdateWorkPlatformInfoReq) GetPlatformInfoData() []*PlatformInfo { } type UpdateWorkPlatformInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid []string `protobuf:"bytes,1,rep,name=workUuid,proto3" json:"workUuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid []string `protobuf:"bytes,1,rep,name=workUuid,proto3" json:"workUuid"` } func (x *UpdateWorkPlatformInfoResp) Reset() { *x = UpdateWorkPlatformInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[41] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[41] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkPlatformInfoResp) String() string { @@ -3769,7 +3919,7 @@ func (*UpdateWorkPlatformInfoResp) ProtoMessage() {} func (x *UpdateWorkPlatformInfoResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[41] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3792,20 +3942,23 @@ func (x *UpdateWorkPlatformInfoResp) GetWorkUuid() []string { } type UpdateWorkPublishLogReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - Detail string `protobuf:"bytes,3,opt,name=detail,proto3" json:"detail"` - Action string `protobuf:"bytes,4,opt,name=action,proto3" json:"action"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + Detail string `protobuf:"bytes,3,opt,name=detail,proto3" json:"detail"` + Action string `protobuf:"bytes,4,opt,name=action,proto3" json:"action"` } func (x *UpdateWorkPublishLogReq) Reset() { *x = UpdateWorkPublishLogReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[42] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[42] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkPublishLogReq) String() string { @@ -3816,7 +3969,7 @@ func (*UpdateWorkPublishLogReq) ProtoMessage() {} func (x *UpdateWorkPublishLogReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[42] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3860,17 +4013,20 @@ func (x *UpdateWorkPublishLogReq) GetAction() string { } type RefreshWorkListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PublishStatus uint32 `protobuf:"varint,1,opt,name=publishStatus,proto3" json:"publishStatus"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PublishStatus uint32 `protobuf:"varint,1,opt,name=publishStatus,proto3" json:"publishStatus"` } func (x *RefreshWorkListReq) Reset() { *x = RefreshWorkListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[43] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[43] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshWorkListReq) String() string { @@ -3881,7 +4037,7 @@ func (*RefreshWorkListReq) ProtoMessage() {} func (x *RefreshWorkListReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[43] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3904,17 +4060,20 @@ func (x *RefreshWorkListReq) GetPublishStatus() uint32 { } type RefreshWorkListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*RefreshWorkListResp_Info `protobuf:"bytes,3,rep,name=Data,proto3" json:"Data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*RefreshWorkListResp_Info `protobuf:"bytes,3,rep,name=Data,proto3" json:"Data"` } func (x *RefreshWorkListResp) Reset() { *x = RefreshWorkListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[44] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[44] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshWorkListResp) String() string { @@ -3925,7 +4084,7 @@ func (*RefreshWorkListResp) ProtoMessage() {} func (x *RefreshWorkListResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[44] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3948,17 +4107,20 @@ func (x *RefreshWorkListResp) GetData() []*RefreshWorkListResp_Info { } type OAuthAccountReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` } func (x *OAuthAccountReq) Reset() { *x = OAuthAccountReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[45] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[45] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthAccountReq) String() string { @@ -3969,7 +4131,7 @@ func (*OAuthAccountReq) ProtoMessage() {} func (x *OAuthAccountReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[45] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -3992,17 +4154,20 @@ func (x *OAuthAccountReq) GetMediaAccountUuid() string { } type OAuthAccountResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url"` } func (x *OAuthAccountResp) Reset() { *x = OAuthAccountResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[46] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[46] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthAccountResp) String() string { @@ -4013,7 +4178,7 @@ func (*OAuthAccountResp) ProtoMessage() {} func (x *OAuthAccountResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[46] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4036,17 +4201,20 @@ func (x *OAuthAccountResp) GetUrl() string { } type OAuthAccountV2Req struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` } func (x *OAuthAccountV2Req) Reset() { *x = OAuthAccountV2Req{} - mi := &file_pb_fiee_cast_proto_msgTypes[47] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[47] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthAccountV2Req) String() string { @@ -4057,7 +4225,7 @@ func (*OAuthAccountV2Req) ProtoMessage() {} func (x *OAuthAccountV2Req) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[47] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4080,20 +4248,23 @@ func (x *OAuthAccountV2Req) GetMediaAccountUuid() string { } type OAuthAccountV2Resp struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` - PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` - AuthUrl string `protobuf:"bytes,4,opt,name=authUrl,proto3" json:"authUrl"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` + PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` + AuthUrl string `protobuf:"bytes,4,opt,name=authUrl,proto3" json:"authUrl"` } func (x *OAuthAccountV2Resp) Reset() { *x = OAuthAccountV2Resp{} - mi := &file_pb_fiee_cast_proto_msgTypes[48] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[48] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthAccountV2Resp) String() string { @@ -4104,7 +4275,7 @@ func (*OAuthAccountV2Resp) ProtoMessage() {} func (x *OAuthAccountV2Resp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[48] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4149,18 +4320,21 @@ func (x *OAuthAccountV2Resp) GetAuthUrl() string { // youtube type OAuthYoutubeTokenReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + MediaAccountUuid string `protobuf:"bytes,1,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + Code string `protobuf:"bytes,2,opt,name=code,proto3" json:"code"` } func (x *OAuthYoutubeTokenReq) Reset() { *x = OAuthYoutubeTokenReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[49] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[49] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthYoutubeTokenReq) String() string { @@ -4171,7 +4345,7 @@ func (*OAuthYoutubeTokenReq) ProtoMessage() {} func (x *OAuthYoutubeTokenReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[49] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4201,19 +4375,22 @@ func (x *OAuthYoutubeTokenReq) GetCode() string { } type OAuthYoutubeTokenResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - AccessToken string `protobuf:"bytes,1,opt,name=accessToken,proto3" json:"accessToken"` - RefreshToken string `protobuf:"bytes,2,opt,name=refreshToken,proto3" json:"refreshToken"` - ExpireTime int64 `protobuf:"varint,3,opt,name=expireTime,proto3" json:"expireTime"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccessToken string `protobuf:"bytes,1,opt,name=accessToken,proto3" json:"accessToken"` + RefreshToken string `protobuf:"bytes,2,opt,name=refreshToken,proto3" json:"refreshToken"` + ExpireTime int64 `protobuf:"varint,3,opt,name=expireTime,proto3" json:"expireTime"` } func (x *OAuthYoutubeTokenResp) Reset() { *x = OAuthYoutubeTokenResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[50] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[50] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthYoutubeTokenResp) String() string { @@ -4224,7 +4401,7 @@ func (*OAuthYoutubeTokenResp) ProtoMessage() {} func (x *OAuthYoutubeTokenResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[50] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4261,19 +4438,22 @@ func (x *OAuthYoutubeTokenResp) GetExpireTime() int64 { } type OAuthCodeToTokenReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Code string `protobuf:"bytes,1,opt,name=code,proto3" json:"code"` - UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` - PlatformID PlatformIDENUM `protobuf:"varint,3,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Code string `protobuf:"bytes,1,opt,name=code,proto3" json:"code"` + UserID string `protobuf:"bytes,2,opt,name=userID,proto3" json:"userID"` + PlatformID PlatformIDENUM `protobuf:"varint,3,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` } func (x *OAuthCodeToTokenReq) Reset() { *x = OAuthCodeToTokenReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[51] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[51] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthCodeToTokenReq) String() string { @@ -4284,7 +4464,7 @@ func (*OAuthCodeToTokenReq) ProtoMessage() {} func (x *OAuthCodeToTokenReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[51] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4321,16 +4501,18 @@ func (x *OAuthCodeToTokenReq) GetPlatformID() PlatformIDENUM { } type OAuthCodeToTokenResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields } func (x *OAuthCodeToTokenResp) Reset() { *x = OAuthCodeToTokenResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[52] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[52] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *OAuthCodeToTokenResp) String() string { @@ -4341,7 +4523,7 @@ func (*OAuthCodeToTokenResp) ProtoMessage() {} func (x *OAuthCodeToTokenResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[52] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4357,17 +4539,20 @@ func (*OAuthCodeToTokenResp) Descriptor() ([]byte, []int) { } type UpdateOAuthReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*UpdateOAuthReq_Info `protobuf:"bytes,1,rep,name=Data,proto3" json:"Data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*UpdateOAuthReq_Info `protobuf:"bytes,1,rep,name=Data,proto3" json:"Data"` } func (x *UpdateOAuthReq) Reset() { *x = UpdateOAuthReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[53] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[53] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateOAuthReq) String() string { @@ -4378,7 +4563,7 @@ func (*UpdateOAuthReq) ProtoMessage() {} func (x *UpdateOAuthReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[53] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4401,19 +4586,22 @@ func (x *UpdateOAuthReq) GetData() []*UpdateOAuthReq_Info { } type RefreshTokenReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - RefreshToken string `protobuf:"bytes,1,opt,name=refreshToken,proto3" json:"refreshToken"` - PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + RefreshToken string `protobuf:"bytes,1,opt,name=refreshToken,proto3" json:"refreshToken"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + UserID string `protobuf:"bytes,3,opt,name=userID,proto3" json:"userID"` } func (x *RefreshTokenReq) Reset() { *x = RefreshTokenReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[54] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[54] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshTokenReq) String() string { @@ -4424,7 +4612,7 @@ func (*RefreshTokenReq) ProtoMessage() {} func (x *RefreshTokenReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[54] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4461,18 +4649,21 @@ func (x *RefreshTokenReq) GetUserID() string { } type RefreshTokenResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - AccessToken string `protobuf:"bytes,1,opt,name=accessToken,proto3" json:"accessToken"` - PlatformUserID string `protobuf:"bytes,2,opt,name=platformUserID,proto3" json:"platformUserID"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccessToken string `protobuf:"bytes,1,opt,name=accessToken,proto3" json:"accessToken"` + PlatformUserID string `protobuf:"bytes,2,opt,name=platformUserID,proto3" json:"platformUserID"` } func (x *RefreshTokenResp) Reset() { *x = RefreshTokenResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[55] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[55] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshTokenResp) String() string { @@ -4483,7 +4674,7 @@ func (*RefreshTokenResp) ProtoMessage() {} func (x *RefreshTokenResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[55] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4513,19 +4704,22 @@ func (x *RefreshTokenResp) GetPlatformUserID() string { } type PublishMediaInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - PlatformMediaUuid string `protobuf:"bytes,3,opt,name=platformMediaUuid,proto3" json:"platformMediaUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` + PlatformMediaUuid string `protobuf:"bytes,3,opt,name=platformMediaUuid,proto3" json:"platformMediaUuid"` } func (x *PublishMediaInfoReq) Reset() { *x = PublishMediaInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[56] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[56] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishMediaInfoReq) String() string { @@ -4536,7 +4730,7 @@ func (*PublishMediaInfoReq) ProtoMessage() {} func (x *PublishMediaInfoReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[56] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4573,20 +4767,23 @@ func (x *PublishMediaInfoReq) GetPlatformMediaUuid() string { } type PublishMediaInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` - PlatformMediaUuid string `protobuf:"bytes,3,opt,name=platformMediaUuid,proto3" json:"platformMediaUuid"` - Info string `protobuf:"bytes,4,opt,name=info,proto3" json:"info"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + PlatformID int32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` + PlatformMediaUuid string `protobuf:"bytes,3,opt,name=platformMediaUuid,proto3" json:"platformMediaUuid"` + Info string `protobuf:"bytes,4,opt,name=info,proto3" json:"info"` } func (x *PublishMediaInfoResp) Reset() { *x = PublishMediaInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[57] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[57] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishMediaInfoResp) String() string { @@ -4597,7 +4794,7 @@ func (*PublishMediaInfoResp) ProtoMessage() {} func (x *PublishMediaInfoResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[57] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4641,17 +4838,20 @@ func (x *PublishMediaInfoResp) GetInfo() string { } type ToolsReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` } func (x *ToolsReq) Reset() { *x = ToolsReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[58] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[58] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ToolsReq) String() string { @@ -4662,7 +4862,7 @@ func (*ToolsReq) ProtoMessage() {} func (x *ToolsReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[58] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4687,25 +4887,28 @@ func (x *ToolsReq) GetAction() string { // 视频脚本相关消息定义 // 更新视频脚本请求 type UpdateVideoScriptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 - CreatorUuid string `protobuf:"bytes,4,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID - CreatorName string `protobuf:"bytes,5,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 - ArtistUuid string `protobuf:"bytes,6,opt,name=artistUuid,proto3" json:"artistUuid"` - ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` - ArtistNum string `protobuf:"bytes,8,opt,name=artistNum,proto3" json:"artistNum"` - ArtistName string `protobuf:"bytes,9,opt,name=artistName,proto3" json:"artistName"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 + CreatorUuid string `protobuf:"bytes,4,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID + CreatorName string `protobuf:"bytes,5,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 + ArtistUuid string `protobuf:"bytes,6,opt,name=artistUuid,proto3" json:"artistUuid"` + ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` + ArtistNum string `protobuf:"bytes,8,opt,name=artistNum,proto3" json:"artistNum"` + ArtistName string `protobuf:"bytes,9,opt,name=artistName,proto3" json:"artistName"` } func (x *UpdateVideoScriptReq) Reset() { *x = UpdateVideoScriptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[59] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[59] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateVideoScriptReq) String() string { @@ -4716,7 +4919,7 @@ func (*UpdateVideoScriptReq) ProtoMessage() {} func (x *UpdateVideoScriptReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[59] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4795,17 +4998,20 @@ func (x *UpdateVideoScriptReq) GetArtistName() string { } type UpdateVideoScriptResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID } func (x *UpdateVideoScriptResp) Reset() { *x = UpdateVideoScriptResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[60] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[60] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateVideoScriptResp) String() string { @@ -4816,7 +5022,7 @@ func (*UpdateVideoScriptResp) ProtoMessage() {} func (x *UpdateVideoScriptResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[60] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4840,17 +5046,20 @@ func (x *UpdateVideoScriptResp) GetUuid() string { // 获取视频脚本详情请求 type GetVideoScriptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID } func (x *GetVideoScriptReq) Reset() { *x = GetVideoScriptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[61] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[61] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetVideoScriptReq) String() string { @@ -4861,7 +5070,7 @@ func (*GetVideoScriptReq) ProtoMessage() {} func (x *GetVideoScriptReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[61] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -4884,29 +5093,32 @@ func (x *GetVideoScriptReq) GetUuid() string { } type GetVideoScriptResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 - Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态 - ArtistUuid string `protobuf:"bytes,5,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 - ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人名称 - CreatorUuid string `protobuf:"bytes,8,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID - CreatorName string `protobuf:"bytes,9,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 - QuoteCount int32 `protobuf:"varint,10,opt,name=quoteCount,proto3" json:"quoteCount"` - ArtistNum string `protobuf:"bytes,11,opt,name=artistNum,proto3" json:"artistNum"` - Remark string `protobuf:"bytes,12,opt,name=remark,proto3" json:"remark"` - ApprovalID string `protobuf:"bytes,13,opt,name=approvalID,proto3" json:"approvalID"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 + Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态 + ArtistUuid string `protobuf:"bytes,5,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 + ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人名称 + CreatorUuid string `protobuf:"bytes,8,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID + CreatorName string `protobuf:"bytes,9,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 + QuoteCount int32 `protobuf:"varint,10,opt,name=quoteCount,proto3" json:"quoteCount"` + ArtistNum string `protobuf:"bytes,11,opt,name=artistNum,proto3" json:"artistNum"` + Remark string `protobuf:"bytes,12,opt,name=remark,proto3" json:"remark"` + ApprovalID string `protobuf:"bytes,13,opt,name=approvalID,proto3" json:"approvalID"` } func (x *GetVideoScriptResp) Reset() { *x = GetVideoScriptResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[62] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[62] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetVideoScriptResp) String() string { @@ -4917,7 +5129,7 @@ func (*GetVideoScriptResp) ProtoMessage() {} func (x *GetVideoScriptResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[62] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5025,25 +5237,28 @@ func (x *GetVideoScriptResp) GetApprovalID() string { // 获取视频脚本列表请求 type ListVideoScriptsReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` // 标题关键字 - Status uint32 `protobuf:"varint,2,opt,name=status,proto3" json:"status"` // 状态 - ArtistKeywords string `protobuf:"bytes,3,opt,name=artistKeywords,proto3" json:"artistKeywords"` // 艺人 - CreatorKeywords string `protobuf:"bytes,4,opt,name=creatorKeywords,proto3" json:"creatorKeywords"` // 创建人 - CreateStartDate string `protobuf:"bytes,5,opt,name=createStartDate,proto3" json:"createStartDate"` - CreateEndDate string `protobuf:"bytes,6,opt,name=createEndDate,proto3" json:"createEndDate"` - Page int32 `protobuf:"varint,7,opt,name=page,proto3" json:"page"` - PageSize int32 `protobuf:"varint,8,opt,name=pageSize,proto3" json:"pageSize"` - ArtistUuid string `protobuf:"bytes,9,opt,name=artistUuid,proto3" json:"artistUuid"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` // 标题关键字 + Status uint32 `protobuf:"varint,2,opt,name=status,proto3" json:"status"` // 状态 + ArtistKeywords string `protobuf:"bytes,3,opt,name=artistKeywords,proto3" json:"artistKeywords"` // 艺人 + CreatorKeywords string `protobuf:"bytes,4,opt,name=creatorKeywords,proto3" json:"creatorKeywords"` // 创建人 + CreateStartDate string `protobuf:"bytes,5,opt,name=createStartDate,proto3" json:"createStartDate"` + CreateEndDate string `protobuf:"bytes,6,opt,name=createEndDate,proto3" json:"createEndDate"` + Page int32 `protobuf:"varint,7,opt,name=page,proto3" json:"page"` + PageSize int32 `protobuf:"varint,8,opt,name=pageSize,proto3" json:"pageSize"` + ArtistUuid string `protobuf:"bytes,9,opt,name=artistUuid,proto3" json:"artistUuid"` } func (x *ListVideoScriptsReq) Reset() { *x = ListVideoScriptsReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[63] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[63] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListVideoScriptsReq) String() string { @@ -5054,7 +5269,7 @@ func (*ListVideoScriptsReq) ProtoMessage() {} func (x *ListVideoScriptsReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[63] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5133,30 +5348,33 @@ func (x *ListVideoScriptsReq) GetArtistUuid() string { } type VideoScriptInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 - ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 - ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人名称 - QuoteCount int32 `protobuf:"varint,7,opt,name=quoteCount,proto3" json:"quoteCount"` - CreatorUuid string `protobuf:"bytes,8,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID - CreatorName string `protobuf:"bytes,9,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 - Status uint32 `protobuf:"varint,10,opt,name=status,proto3" json:"status"` // 状态 - CreatedDate string `protobuf:"bytes,11,opt,name=createdDate,proto3" json:"createdDate"` // 创建时间 - ArtistNum string `protobuf:"bytes,12,opt,name=artistNum,proto3" json:"artistNum"` - Remark string `protobuf:"bytes,13,opt,name=remark,proto3" json:"remark"` - Success bool `protobuf:"varint,14,opt,name=success,proto3" json:"success"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 脚本标题 + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 脚本内容 + ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 + ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人名称 + QuoteCount int32 `protobuf:"varint,7,opt,name=quoteCount,proto3" json:"quoteCount"` + CreatorUuid string `protobuf:"bytes,8,opt,name=creatorUuid,proto3" json:"creatorUuid"` // 创建人UUID + CreatorName string `protobuf:"bytes,9,opt,name=creatorName,proto3" json:"creatorName"` // 创建人名称 + Status uint32 `protobuf:"varint,10,opt,name=status,proto3" json:"status"` // 状态 + CreatedDate string `protobuf:"bytes,11,opt,name=createdDate,proto3" json:"createdDate"` // 创建时间 + ArtistNum string `protobuf:"bytes,12,opt,name=artistNum,proto3" json:"artistNum"` + Remark string `protobuf:"bytes,13,opt,name=remark,proto3" json:"remark"` + Success bool `protobuf:"varint,14,opt,name=success,proto3" json:"success"` } func (x *VideoScriptInfo) Reset() { *x = VideoScriptInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[64] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[64] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *VideoScriptInfo) String() string { @@ -5167,7 +5385,7 @@ func (*VideoScriptInfo) ProtoMessage() {} func (x *VideoScriptInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[64] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5281,18 +5499,21 @@ func (x *VideoScriptInfo) GetSuccess() bool { } type ListVideoScriptsResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` } func (x *ListVideoScriptsResp) Reset() { *x = ListVideoScriptsResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[65] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[65] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListVideoScriptsResp) String() string { @@ -5303,7 +5524,7 @@ func (*ListVideoScriptsResp) ProtoMessage() {} func (x *ListVideoScriptsResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[65] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5334,17 +5555,20 @@ func (x *ListVideoScriptsResp) GetCount() int64 { // 删除视频脚本请求 type DeleteVideoScriptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 脚本UUID } func (x *DeleteVideoScriptReq) Reset() { *x = DeleteVideoScriptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[66] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[66] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DeleteVideoScriptReq) String() string { @@ -5355,7 +5579,7 @@ func (*DeleteVideoScriptReq) ProtoMessage() {} func (x *DeleteVideoScriptReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[66] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5378,17 +5602,20 @@ func (x *DeleteVideoScriptReq) GetUuid() string { } type UpdateVideoScriptBatchReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` } func (x *UpdateVideoScriptBatchReq) Reset() { *x = UpdateVideoScriptBatchReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[67] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[67] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateVideoScriptBatchReq) String() string { @@ -5399,7 +5626,7 @@ func (*UpdateVideoScriptBatchReq) ProtoMessage() {} func (x *UpdateVideoScriptBatchReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[67] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5422,19 +5649,22 @@ func (x *UpdateVideoScriptBatchReq) GetData() []*VideoScriptInfo { } type UpdateVideoScriptBatchResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` - FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*VideoScriptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` + SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` + FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` } func (x *UpdateVideoScriptBatchResp) Reset() { *x = UpdateVideoScriptBatchResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[68] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[68] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateVideoScriptBatchResp) String() string { @@ -5445,7 +5675,7 @@ func (*UpdateVideoScriptBatchResp) ProtoMessage() {} func (x *UpdateVideoScriptBatchResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[68] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5482,20 +5712,23 @@ func (x *UpdateVideoScriptBatchResp) GetFailCount() int32 { } type UpdateScriptStatusReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` - Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid"` - ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` - ApprovalReply string `protobuf:"bytes,4,opt,name=approvalReply,proto3" json:"approvalReply"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` + Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid"` + ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` + ApprovalReply string `protobuf:"bytes,4,opt,name=approvalReply,proto3" json:"approvalReply"` } func (x *UpdateScriptStatusReq) Reset() { *x = UpdateScriptStatusReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[69] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[69] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateScriptStatusReq) String() string { @@ -5506,7 +5739,7 @@ func (*UpdateScriptStatusReq) ProtoMessage() {} func (x *UpdateScriptStatusReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[69] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5550,19 +5783,22 @@ func (x *UpdateScriptStatusReq) GetApprovalReply() string { } type SetLayoutReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - Data string `protobuf:"bytes,2,opt,name=data,proto3" json:"data"` - FormName string `protobuf:"bytes,3,opt,name=formName,proto3" json:"formName"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + Data string `protobuf:"bytes,2,opt,name=data,proto3" json:"data"` + FormName string `protobuf:"bytes,3,opt,name=formName,proto3" json:"formName"` } func (x *SetLayoutReq) Reset() { *x = SetLayoutReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[70] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[70] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *SetLayoutReq) String() string { @@ -5573,7 +5809,7 @@ func (*SetLayoutReq) ProtoMessage() {} func (x *SetLayoutReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[70] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5610,18 +5846,21 @@ func (x *SetLayoutReq) GetFormName() string { } type GetLayoutReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` - FormName string `protobuf:"bytes,2,opt,name=formName,proto3" json:"formName"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + UserID string `protobuf:"bytes,1,opt,name=userID,proto3" json:"userID"` + FormName string `protobuf:"bytes,2,opt,name=formName,proto3" json:"formName"` } func (x *GetLayoutReq) Reset() { *x = GetLayoutReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[71] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[71] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetLayoutReq) String() string { @@ -5632,7 +5871,7 @@ func (*GetLayoutReq) ProtoMessage() {} func (x *GetLayoutReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[71] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5662,18 +5901,21 @@ func (x *GetLayoutReq) GetFormName() string { } type GetLayoutResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data string `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` - FormName string `protobuf:"bytes,3,opt,name=formName,proto3" json:"formName"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data string `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` + FormName string `protobuf:"bytes,3,opt,name=formName,proto3" json:"formName"` } func (x *GetLayoutResp) Reset() { *x = GetLayoutResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[72] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[72] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetLayoutResp) String() string { @@ -5684,7 +5926,7 @@ func (*GetLayoutResp) ProtoMessage() {} func (x *GetLayoutResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[72] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5715,19 +5957,22 @@ func (x *GetLayoutResp) GetFormName() string { // 关键词相关消息定义 type UpdatePromptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID - Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 - Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID + Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 + Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 } func (x *UpdatePromptReq) Reset() { *x = UpdatePromptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[73] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[73] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdatePromptReq) String() string { @@ -5738,7 +5983,7 @@ func (*UpdatePromptReq) ProtoMessage() {} func (x *UpdatePromptReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[73] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5775,17 +6020,20 @@ func (x *UpdatePromptReq) GetCategory() CategoryENUM { } type DeletePromptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID } func (x *DeletePromptReq) Reset() { *x = DeletePromptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[74] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[74] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DeletePromptReq) String() string { @@ -5796,7 +6044,7 @@ func (*DeletePromptReq) ProtoMessage() {} func (x *DeletePromptReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[74] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5819,17 +6067,20 @@ func (x *DeletePromptReq) GetPromptUuid() string { } type GetPromptReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID } func (x *GetPromptReq) Reset() { *x = GetPromptReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[75] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[75] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetPromptReq) String() string { @@ -5840,7 +6091,7 @@ func (*GetPromptReq) ProtoMessage() {} func (x *GetPromptReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[75] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5863,20 +6114,23 @@ func (x *GetPromptReq) GetPromptUuid() string { } type GetPromptResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID - Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 - Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 - UseCount uint32 `protobuf:"varint,4,opt,name=useCount,proto3" json:"useCount"` // 使用次数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID + Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 + Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 + UseCount uint32 `protobuf:"varint,4,opt,name=useCount,proto3" json:"useCount"` // 使用次数 } func (x *GetPromptResp) Reset() { *x = GetPromptResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[76] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[76] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetPromptResp) String() string { @@ -5887,7 +6141,7 @@ func (*GetPromptResp) ProtoMessage() {} func (x *GetPromptResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[76] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -5931,23 +6185,26 @@ func (x *GetPromptResp) GetUseCount() uint32 { } type ListPromptsReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Prompt string `protobuf:"bytes,1,opt,name=prompt,proto3" json:"prompt"` // 关键词搜索 - Category CategoryENUM `protobuf:"varint,2,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类筛选 - Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - Rand bool `protobuf:"varint,5,opt,name=rand,proto3" json:"rand"` - StartUseCount int32 `protobuf:"varint,6,opt,name=startUseCount,proto3" json:"startUseCount"` - EndUseCount int32 `protobuf:"varint,7,opt,name=endUseCount,proto3" json:"endUseCount"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Prompt string `protobuf:"bytes,1,opt,name=prompt,proto3" json:"prompt"` // 关键词搜索 + Category CategoryENUM `protobuf:"varint,2,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类筛选 + Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 + Rand bool `protobuf:"varint,5,opt,name=rand,proto3" json:"rand"` + StartUseCount int32 `protobuf:"varint,6,opt,name=startUseCount,proto3" json:"startUseCount"` + EndUseCount int32 `protobuf:"varint,7,opt,name=endUseCount,proto3" json:"endUseCount"` } func (x *ListPromptsReq) Reset() { *x = ListPromptsReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[77] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[77] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListPromptsReq) String() string { @@ -5958,7 +6215,7 @@ func (*ListPromptsReq) ProtoMessage() {} func (x *ListPromptsReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[77] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6023,24 +6280,27 @@ func (x *ListPromptsReq) GetEndUseCount() int32 { } type PromptInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID - Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 - Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 - Remark string `protobuf:"bytes,4,opt,name=remark,proto3" json:"remark"` // 备注 - Success bool `protobuf:"varint,5,opt,name=success,proto3" json:"success"` // 是否更新成功 - UseCount uint32 `protobuf:"varint,6,opt,name=useCount,proto3" json:"useCount"` // 使用次数 - LineNo uint32 `protobuf:"varint,7,opt,name=lineNo,proto3" json:"lineNo"` // 行号 - CreatedDate string `protobuf:"bytes,8,opt,name=createdDate,proto3" json:"createdDate"` // 创建时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PromptUuid string `protobuf:"bytes,1,opt,name=promptUuid,proto3" json:"promptUuid"` // 关键词UUID + Prompt string `protobuf:"bytes,2,opt,name=prompt,proto3" json:"prompt"` // 关键词 + Category CategoryENUM `protobuf:"varint,3,opt,name=category,proto3,enum=Cast.CategoryENUM" json:"category"` // 分类 + Remark string `protobuf:"bytes,4,opt,name=remark,proto3" json:"remark"` // 备注 + Success bool `protobuf:"varint,5,opt,name=success,proto3" json:"success"` // 是否更新成功 + UseCount uint32 `protobuf:"varint,6,opt,name=useCount,proto3" json:"useCount"` // 使用次数 + LineNo uint32 `protobuf:"varint,7,opt,name=lineNo,proto3" json:"lineNo"` // 行号 + CreatedDate string `protobuf:"bytes,8,opt,name=createdDate,proto3" json:"createdDate"` // 创建时间 } func (x *PromptInfo) Reset() { *x = PromptInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[78] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[78] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PromptInfo) String() string { @@ -6051,7 +6311,7 @@ func (*PromptInfo) ProtoMessage() {} func (x *PromptInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[78] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6123,18 +6383,21 @@ func (x *PromptInfo) GetCreatedDate() string { } type ListPromptsResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *ListPromptsResp) Reset() { *x = ListPromptsResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[79] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[79] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListPromptsResp) String() string { @@ -6145,7 +6408,7 @@ func (*ListPromptsResp) ProtoMessage() {} func (x *ListPromptsResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[79] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6175,17 +6438,20 @@ func (x *ListPromptsResp) GetCount() int64 { } type UpdatePromptBatchReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 } func (x *UpdatePromptBatchReq) Reset() { *x = UpdatePromptBatchReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[80] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[80] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdatePromptBatchReq) String() string { @@ -6196,7 +6462,7 @@ func (*UpdatePromptBatchReq) ProtoMessage() {} func (x *UpdatePromptBatchReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[80] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6219,19 +6485,22 @@ func (x *UpdatePromptBatchReq) GetData() []*PromptInfo { } type UpdatePromptBatchResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 - SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` // 成功数量 - FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` // 失败数量 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*PromptInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 关键词列表 + SuccessCount int32 `protobuf:"varint,2,opt,name=successCount,proto3" json:"successCount"` // 成功数量 + FailCount int32 `protobuf:"varint,3,opt,name=failCount,proto3" json:"failCount"` // 失败数量 } func (x *UpdatePromptBatchResp) Reset() { *x = UpdatePromptBatchResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[81] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[81] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdatePromptBatchResp) String() string { @@ -6242,7 +6511,7 @@ func (*UpdatePromptBatchResp) ProtoMessage() {} func (x *UpdatePromptBatchResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[81] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6280,20 +6549,23 @@ func (x *UpdatePromptBatchResp) GetFailCount() int32 { // 艺人相关接口 type ArtistInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - RefID string `protobuf:"bytes,2,opt,name=refID,proto3" json:"refID"` // 艺人名称 - ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` // 艺人手机号 - SubNum string `protobuf:"bytes,4,opt,name=subNum,proto3" json:"subNum"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + RefID string `protobuf:"bytes,2,opt,name=refID,proto3" json:"refID"` // 艺人名称 + ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` // 艺人手机号 + SubNum string `protobuf:"bytes,4,opt,name=subNum,proto3" json:"subNum"` } func (x *ArtistInfo) Reset() { *x = ArtistInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[82] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[82] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistInfo) String() string { @@ -6304,7 +6576,7 @@ func (*ArtistInfo) ProtoMessage() {} func (x *ArtistInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[82] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6348,18 +6620,21 @@ func (x *ArtistInfo) GetSubNum() string { } type UpdateArtistReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistInfo *ArtistInfo `protobuf:"bytes,1,opt,name=artistInfo,proto3" json:"artistInfo"` - Uuid string `protobuf:"bytes,2,opt,name=Uuid,proto3" json:"Uuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistInfo *ArtistInfo `protobuf:"bytes,1,opt,name=artistInfo,proto3" json:"artistInfo"` + Uuid string `protobuf:"bytes,2,opt,name=Uuid,proto3" json:"Uuid"` } func (x *UpdateArtistReq) Reset() { *x = UpdateArtistReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[83] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[83] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateArtistReq) String() string { @@ -6370,7 +6645,7 @@ func (*UpdateArtistReq) ProtoMessage() {} func (x *UpdateArtistReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[83] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6400,17 +6675,20 @@ func (x *UpdateArtistReq) GetUuid() string { } type UpdateArtistResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID } func (x *UpdateArtistResp) Reset() { *x = UpdateArtistResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[84] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[84] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateArtistResp) String() string { @@ -6421,7 +6699,7 @@ func (*UpdateArtistResp) ProtoMessage() {} func (x *UpdateArtistResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[84] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6444,17 +6722,20 @@ func (x *UpdateArtistResp) GetArtistUuid() string { } type GetArtistReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID } func (x *GetArtistReq) Reset() { *x = GetArtistReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[85] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[85] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetArtistReq) String() string { @@ -6465,7 +6746,7 @@ func (*GetArtistReq) ProtoMessage() {} func (x *GetArtistReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[85] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6488,18 +6769,21 @@ func (x *GetArtistReq) GetArtistUuid() string { } type GetArtistResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistInfo *ArtistInfo `protobuf:"bytes,1,opt,name=artistInfo,proto3" json:"artistInfo"` - Uuid string `protobuf:"bytes,2,opt,name=Uuid,proto3" json:"Uuid"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistInfo *ArtistInfo `protobuf:"bytes,1,opt,name=artistInfo,proto3" json:"artistInfo"` + Uuid string `protobuf:"bytes,2,opt,name=Uuid,proto3" json:"Uuid"` } func (x *GetArtistResp) Reset() { *x = GetArtistResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[86] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[86] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetArtistResp) String() string { @@ -6510,7 +6794,7 @@ func (*GetArtistResp) ProtoMessage() {} func (x *GetArtistResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[86] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6541,40 +6825,43 @@ func (x *GetArtistResp) GetUuid() string { // 作品分析相关消息定义 type CreateWorkAnalysisReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistID string `protobuf:"bytes,4,opt,name=artistID,proto3" json:"artistID"` // 艺人ID - ArtistPhone string `protobuf:"bytes,5,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - Analysis string `protobuf:"bytes,6,opt,name=analysis,proto3" json:"analysis"` // 分析内容 - Title string `protobuf:"bytes,7,opt,name=title,proto3" json:"title"` // 标题 - PdfUrl string `protobuf:"bytes,8,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 - MediaAccountCount int32 `protobuf:"varint,9,opt,name=mediaAccountCount,proto3" json:"mediaAccountCount"` // 当前账号数 - WorkVideoCount int32 `protobuf:"varint,10,opt,name=workVideoCount,proto3" json:"workVideoCount"` // 当前发布视频数 - WorkImageCount int32 `protobuf:"varint,11,opt,name=workImageCount,proto3" json:"workImageCount"` // 当前发布图文数 - Views int32 `protobuf:"varint,12,opt,name=views,proto3" json:"views"` // 是否开启浏览/播放量统计 0 关闭 1 开启 - Likes int32 `protobuf:"varint,13,opt,name=likes,proto3" json:"likes"` // 是否开启点赞数统计 0 关闭 1 开启 - Comments int32 `protobuf:"varint,14,opt,name=comments,proto3" json:"comments"` // 是否开启评论数统计 0 关闭 1 开启 - Shares int32 `protobuf:"varint,15,opt,name=shares,proto3" json:"shares"` // 是否开启分享数统计 0 关闭 1 开启 - FansCount int32 `protobuf:"varint,16,opt,name=fansCount,proto3" json:"fansCount"` // 是否开启粉丝数统计 0 关闭 1 开启 - TopCities int32 `protobuf:"varint,17,opt,name=topCities,proto3" json:"topCities"` // 是否开启Top城市统计 0 关闭 1 开启 - MostActiveDay int32 `protobuf:"varint,18,opt,name=mostActiveDay,proto3" json:"mostActiveDay"` // 是否开启最活跃日统计 0 关闭 1 开启 - BestPostTime int32 `protobuf:"varint,19,opt,name=bestPostTime,proto3" json:"bestPostTime"` // 是否开启最佳发布时间统计 0 关闭 1 开启 - PeriodTypeFans uint32 `protobuf:"varint,21,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 - PeriodTypeViews uint32 `protobuf:"varint,22,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 - PeriodTypeLikes uint32 `protobuf:"varint,23,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 - PeriodTypeComments uint32 `protobuf:"varint,24,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 - PeriodTypeShares uint32 `protobuf:"varint,25,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID + SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistID string `protobuf:"bytes,4,opt,name=artistID,proto3" json:"artistID"` // 艺人ID + ArtistPhone string `protobuf:"bytes,5,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + Analysis string `protobuf:"bytes,6,opt,name=analysis,proto3" json:"analysis"` // 分析内容 + Title string `protobuf:"bytes,7,opt,name=title,proto3" json:"title"` // 标题 + PdfUrl string `protobuf:"bytes,8,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 + MediaAccountCount int32 `protobuf:"varint,9,opt,name=mediaAccountCount,proto3" json:"mediaAccountCount"` // 当前账号数 + WorkVideoCount int32 `protobuf:"varint,10,opt,name=workVideoCount,proto3" json:"workVideoCount"` // 当前发布视频数 + WorkImageCount int32 `protobuf:"varint,11,opt,name=workImageCount,proto3" json:"workImageCount"` // 当前发布图文数 + Views int32 `protobuf:"varint,12,opt,name=views,proto3" json:"views"` // 是否开启浏览/播放量统计 0 关闭 1 开启 + Likes int32 `protobuf:"varint,13,opt,name=likes,proto3" json:"likes"` // 是否开启点赞数统计 0 关闭 1 开启 + Comments int32 `protobuf:"varint,14,opt,name=comments,proto3" json:"comments"` // 是否开启评论数统计 0 关闭 1 开启 + Shares int32 `protobuf:"varint,15,opt,name=shares,proto3" json:"shares"` // 是否开启分享数统计 0 关闭 1 开启 + FansCount int32 `protobuf:"varint,16,opt,name=fansCount,proto3" json:"fansCount"` // 是否开启粉丝数统计 0 关闭 1 开启 + TopCities int32 `protobuf:"varint,17,opt,name=topCities,proto3" json:"topCities"` // 是否开启Top城市统计 0 关闭 1 开启 + MostActiveDay int32 `protobuf:"varint,18,opt,name=mostActiveDay,proto3" json:"mostActiveDay"` // 是否开启最活跃日统计 0 关闭 1 开启 + BestPostTime int32 `protobuf:"varint,19,opt,name=bestPostTime,proto3" json:"bestPostTime"` // 是否开启最佳发布时间统计 0 关闭 1 开启 + PeriodTypeFans uint32 `protobuf:"varint,21,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 + PeriodTypeViews uint32 `protobuf:"varint,22,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 + PeriodTypeLikes uint32 `protobuf:"varint,23,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 + PeriodTypeComments uint32 `protobuf:"varint,24,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 + PeriodTypeShares uint32 `protobuf:"varint,25,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 } func (x *CreateWorkAnalysisReq) Reset() { *x = CreateWorkAnalysisReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[87] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[87] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *CreateWorkAnalysisReq) String() string { @@ -6585,7 +6872,7 @@ func (*CreateWorkAnalysisReq) ProtoMessage() {} func (x *CreateWorkAnalysisReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[87] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6769,17 +7056,20 @@ func (x *CreateWorkAnalysisReq) GetPeriodTypeShares() uint32 { } type CreateWorkAnalysisResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID } func (x *CreateWorkAnalysisResp) Reset() { *x = CreateWorkAnalysisResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[88] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[88] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *CreateWorkAnalysisResp) String() string { @@ -6790,7 +7080,7 @@ func (*CreateWorkAnalysisResp) ProtoMessage() {} func (x *CreateWorkAnalysisResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[88] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -6813,37 +7103,40 @@ func (x *CreateWorkAnalysisResp) GetUuid() string { } type UpdateWorkAnalysisReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - Analysis string `protobuf:"bytes,2,opt,name=analysis,proto3" json:"analysis"` // 分析内容 - Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title"` // 标题 - PdfUrl string `protobuf:"bytes,4,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 - MediaAccountCount int32 `protobuf:"varint,5,opt,name=mediaAccountCount,proto3" json:"mediaAccountCount"` // 当前账号数 - WorkVideoCount int32 `protobuf:"varint,6,opt,name=workVideoCount,proto3" json:"workVideoCount"` // 当前发布视频数 - WorkImageCount int32 `protobuf:"varint,7,opt,name=workImageCount,proto3" json:"workImageCount"` // 当前发布图文数 - Views int32 `protobuf:"varint,8,opt,name=views,proto3" json:"views"` // 是否开启浏览/播放量统计 0 关闭 1 开启 - Likes int32 `protobuf:"varint,9,opt,name=likes,proto3" json:"likes"` // 是否开启点赞数统计 0 关闭 1 开启 - Comments int32 `protobuf:"varint,10,opt,name=comments,proto3" json:"comments"` // 是否开启评论数统计 0 关闭 1 开启 - Shares int32 `protobuf:"varint,11,opt,name=shares,proto3" json:"shares"` // 是否开启分享数统计 0 关闭 1 开启 - FansCount int32 `protobuf:"varint,12,opt,name=fansCount,proto3" json:"fansCount"` // 是否开启粉丝数统计 0 关闭 1 开启 - TopCities int32 `protobuf:"varint,13,opt,name=topCities,proto3" json:"topCities"` // 是否开启Top城市统计 0 关闭 1 开启 - MostActiveDay int32 `protobuf:"varint,14,opt,name=mostActiveDay,proto3" json:"mostActiveDay"` // 是否开启最活跃日统计 0 关闭 1 开启 - BestPostTime int32 `protobuf:"varint,15,opt,name=bestPostTime,proto3" json:"bestPostTime"` // 是否开启最佳发布时间统计 0 关闭 1 开启 - ArtistUUID string `protobuf:"bytes,16,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID - PeriodTypeFans uint32 `protobuf:"varint,17,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 - PeriodTypeViews uint32 `protobuf:"varint,18,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 - PeriodTypeLikes uint32 `protobuf:"varint,19,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 - PeriodTypeComments uint32 `protobuf:"varint,20,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 - PeriodTypeShares uint32 `protobuf:"varint,21,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID + Analysis string `protobuf:"bytes,2,opt,name=analysis,proto3" json:"analysis"` // 分析内容 + Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title"` // 标题 + PdfUrl string `protobuf:"bytes,4,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 + MediaAccountCount int32 `protobuf:"varint,5,opt,name=mediaAccountCount,proto3" json:"mediaAccountCount"` // 当前账号数 + WorkVideoCount int32 `protobuf:"varint,6,opt,name=workVideoCount,proto3" json:"workVideoCount"` // 当前发布视频数 + WorkImageCount int32 `protobuf:"varint,7,opt,name=workImageCount,proto3" json:"workImageCount"` // 当前发布图文数 + Views int32 `protobuf:"varint,8,opt,name=views,proto3" json:"views"` // 是否开启浏览/播放量统计 0 关闭 1 开启 + Likes int32 `protobuf:"varint,9,opt,name=likes,proto3" json:"likes"` // 是否开启点赞数统计 0 关闭 1 开启 + Comments int32 `protobuf:"varint,10,opt,name=comments,proto3" json:"comments"` // 是否开启评论数统计 0 关闭 1 开启 + Shares int32 `protobuf:"varint,11,opt,name=shares,proto3" json:"shares"` // 是否开启分享数统计 0 关闭 1 开启 + FansCount int32 `protobuf:"varint,12,opt,name=fansCount,proto3" json:"fansCount"` // 是否开启粉丝数统计 0 关闭 1 开启 + TopCities int32 `protobuf:"varint,13,opt,name=topCities,proto3" json:"topCities"` // 是否开启Top城市统计 0 关闭 1 开启 + MostActiveDay int32 `protobuf:"varint,14,opt,name=mostActiveDay,proto3" json:"mostActiveDay"` // 是否开启最活跃日统计 0 关闭 1 开启 + BestPostTime int32 `protobuf:"varint,15,opt,name=bestPostTime,proto3" json:"bestPostTime"` // 是否开启最佳发布时间统计 0 关闭 1 开启 + ArtistUUID string `protobuf:"bytes,16,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID + PeriodTypeFans uint32 `protobuf:"varint,17,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 + PeriodTypeViews uint32 `protobuf:"varint,18,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 + PeriodTypeLikes uint32 `protobuf:"varint,19,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 + PeriodTypeComments uint32 `protobuf:"varint,20,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 + PeriodTypeShares uint32 `protobuf:"varint,21,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 } func (x *UpdateWorkAnalysisReq) Reset() { *x = UpdateWorkAnalysisReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[89] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[89] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkAnalysisReq) String() string { @@ -6854,7 +7147,7 @@ func (*UpdateWorkAnalysisReq) ProtoMessage() {} func (x *UpdateWorkAnalysisReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[89] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7017,24 +7310,27 @@ func (x *UpdateWorkAnalysisReq) GetPeriodTypeShares() uint32 { } type UpdateWorkAnalysisStatusReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` // 操作类型 - Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID - ApprovalReply string `protobuf:"bytes,4,opt,name=approvalReply,proto3" json:"approvalReply"` // 审批回复 - ConfirmRemark string `protobuf:"bytes,5,opt,name=confirmRemark,proto3" json:"confirmRemark"` // 确认备注 - ConfirmStatus uint32 `protobuf:"varint,6,opt,name=confirmStatus,proto3" json:"confirmStatus"` // 确认状态 1 通过 2 驳回 3 失败 - CostType uint32 `protobuf:"varint,7,opt,name=costType,proto3" json:"costType"` // 计费类型 1 套餐 2 增值 - ConfirmType uint32 `protobuf:"varint,8,opt,name=confirmType,proto3" json:"confirmType"` // 确认类型 1 艺人确认 2 系统确认 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkAction WorkActionENUM `protobuf:"varint,1,opt,name=workAction,proto3,enum=Cast.WorkActionENUM" json:"workAction"` // 操作类型 + Uuid string `protobuf:"bytes,2,opt,name=uuid,proto3" json:"uuid"` // 分析UUID + ApprovalID string `protobuf:"bytes,3,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID + ApprovalReply string `protobuf:"bytes,4,opt,name=approvalReply,proto3" json:"approvalReply"` // 审批回复 + ConfirmRemark string `protobuf:"bytes,5,opt,name=confirmRemark,proto3" json:"confirmRemark"` // 确认备注 + ConfirmStatus uint32 `protobuf:"varint,6,opt,name=confirmStatus,proto3" json:"confirmStatus"` // 确认状态 1 通过 2 驳回 3 失败 + CostType uint32 `protobuf:"varint,7,opt,name=costType,proto3" json:"costType"` // 计费类型 1 套餐 2 增值 + ConfirmType uint32 `protobuf:"varint,8,opt,name=confirmType,proto3" json:"confirmType"` // 确认类型 1 艺人确认 2 系统确认 } func (x *UpdateWorkAnalysisStatusReq) Reset() { *x = UpdateWorkAnalysisStatusReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[90] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[90] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkAnalysisStatusReq) String() string { @@ -7045,7 +7341,7 @@ func (*UpdateWorkAnalysisStatusReq) ProtoMessage() {} func (x *UpdateWorkAnalysisStatusReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[90] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7117,25 +7413,28 @@ func (x *UpdateWorkAnalysisStatusReq) GetConfirmType() uint32 { } type WorkAnalysisLogInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 标题 - UpdateTime string `protobuf:"bytes,3,opt,name=updateTime,proto3" json:"updateTime"` // 更新时间 - WorkAnalysisStatus uint32 `protobuf:"varint,4,opt,name=workAnalysisStatus,proto3" json:"workAnalysisStatus"` // 状态 - ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 - ArtistUuid string `protobuf:"bytes,6,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - AnalysisExtraData string `protobuf:"bytes,7,opt,name=analysisExtraData,proto3" json:"analysisExtraData"` // 数据分析扩展数据 - OperatorName string `protobuf:"bytes,8,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 - OperatorID string `protobuf:"bytes,9,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 标题 + UpdateTime string `protobuf:"bytes,3,opt,name=updateTime,proto3" json:"updateTime"` // 更新时间 + WorkAnalysisStatus uint32 `protobuf:"varint,4,opt,name=workAnalysisStatus,proto3" json:"workAnalysisStatus"` // 状态 + ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 + ArtistUuid string `protobuf:"bytes,6,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + AnalysisExtraData string `protobuf:"bytes,7,opt,name=analysisExtraData,proto3" json:"analysisExtraData"` // 数据分析扩展数据 + OperatorName string `protobuf:"bytes,8,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 + OperatorID string `protobuf:"bytes,9,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID } func (x *WorkAnalysisLogInfo) Reset() { *x = WorkAnalysisLogInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[91] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[91] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisLogInfo) String() string { @@ -7146,7 +7445,7 @@ func (*WorkAnalysisLogInfo) ProtoMessage() {} func (x *WorkAnalysisLogInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[91] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7226,24 +7525,27 @@ func (x *WorkAnalysisLogInfo) GetOperatorID() string { // 粉丝数系列 type WorkAnalysisFansSeries struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - FansCount int64 `protobuf:"varint,2,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数总数 - PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 - StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD - EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD - DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] - CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + FansCount int64 `protobuf:"varint,2,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数总数 + PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 + StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD + EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD + DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] + CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisFansSeries) Reset() { *x = WorkAnalysisFansSeries{} - mi := &file_pb_fiee_cast_proto_msgTypes[92] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[92] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisFansSeries) String() string { @@ -7254,7 +7556,7 @@ func (*WorkAnalysisFansSeries) ProtoMessage() {} func (x *WorkAnalysisFansSeries) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[92] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7327,24 +7629,27 @@ func (x *WorkAnalysisFansSeries) GetUpdatedAt() int32 { // 访问量系列 type WorkAnalysisViewsSeries struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - ViewsCount int64 `protobuf:"varint,2,opt,name=viewsCount,proto3" json:"viewsCount"` // 访问数总数 - PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 - StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD - EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD - DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] - CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + ViewsCount int64 `protobuf:"varint,2,opt,name=viewsCount,proto3" json:"viewsCount"` // 访问数总数 + PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 + StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD + EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD + DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] + CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisViewsSeries) Reset() { *x = WorkAnalysisViewsSeries{} - mi := &file_pb_fiee_cast_proto_msgTypes[93] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[93] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisViewsSeries) String() string { @@ -7355,7 +7660,7 @@ func (*WorkAnalysisViewsSeries) ProtoMessage() {} func (x *WorkAnalysisViewsSeries) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[93] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7428,24 +7733,27 @@ func (x *WorkAnalysisViewsSeries) GetUpdatedAt() int32 { // 点赞数系列 type WorkAnalysisLikesSeries struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - LikesCount int64 `protobuf:"varint,2,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数总数 - PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 - StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD - EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD - DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] - CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + LikesCount int64 `protobuf:"varint,2,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数总数 + PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 + StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD + EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD + DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] + CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisLikesSeries) Reset() { *x = WorkAnalysisLikesSeries{} - mi := &file_pb_fiee_cast_proto_msgTypes[94] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[94] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisLikesSeries) String() string { @@ -7456,7 +7764,7 @@ func (*WorkAnalysisLikesSeries) ProtoMessage() {} func (x *WorkAnalysisLikesSeries) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[94] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7529,24 +7837,27 @@ func (x *WorkAnalysisLikesSeries) GetUpdatedAt() int32 { // 评论数系列 type WorkAnalysisCommentsSeries struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - CommentsCount int64 `protobuf:"varint,2,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数总数 - PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 - StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD - EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD - DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] - CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + CommentsCount int64 `protobuf:"varint,2,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数总数 + PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 + StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD + EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD + DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] + CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisCommentsSeries) Reset() { *x = WorkAnalysisCommentsSeries{} - mi := &file_pb_fiee_cast_proto_msgTypes[95] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[95] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisCommentsSeries) String() string { @@ -7557,7 +7868,7 @@ func (*WorkAnalysisCommentsSeries) ProtoMessage() {} func (x *WorkAnalysisCommentsSeries) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[95] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7630,24 +7941,27 @@ func (x *WorkAnalysisCommentsSeries) GetUpdatedAt() int32 { // 分享数系列 type WorkAnalysisSharesSeries struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - SharesCount int64 `protobuf:"varint,2,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数总数 - PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 - StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD - EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD - DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] - CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + SharesCount int64 `protobuf:"varint,2,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数总数 + PeriodType uint32 `protobuf:"varint,3,opt,name=periodType,proto3" json:"periodType"` // 1 日 2 周 3 月 + StartDate int32 `protobuf:"varint,4,opt,name=startDate,proto3" json:"startDate"` // 开始日期YYYYMMDD + EndDate int32 `protobuf:"varint,5,opt,name=endDate,proto3" json:"endDate"` // 结束日期YYYYMMDD + DetailJSON string `protobuf:"bytes,6,opt,name=detailJSON,proto3" json:"detailJSON"` // 时间序列[{date:YYYYMMDD,platform:1,value:int}] + CreatedAt int32 `protobuf:"varint,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisSharesSeries) Reset() { *x = WorkAnalysisSharesSeries{} - mi := &file_pb_fiee_cast_proto_msgTypes[96] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[96] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisSharesSeries) String() string { @@ -7658,7 +7972,7 @@ func (*WorkAnalysisSharesSeries) ProtoMessage() {} func (x *WorkAnalysisSharesSeries) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[96] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7731,20 +8045,23 @@ func (x *WorkAnalysisSharesSeries) GetUpdatedAt() int32 { // Top城市 type WorkAnalysisTopCities struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - CitiesJSON string `protobuf:"bytes,2,opt,name=citiesJSON,proto3" json:"citiesJSON"` // [{cityName:string,count:int,rank:int}] - CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + CitiesJSON string `protobuf:"bytes,2,opt,name=citiesJSON,proto3" json:"citiesJSON"` // [{cityName:string,count:int,rank:int}] + CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisTopCities) Reset() { *x = WorkAnalysisTopCities{} - mi := &file_pb_fiee_cast_proto_msgTypes[97] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[97] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisTopCities) String() string { @@ -7755,7 +8072,7 @@ func (*WorkAnalysisTopCities) ProtoMessage() {} func (x *WorkAnalysisTopCities) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[97] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7800,20 +8117,23 @@ func (x *WorkAnalysisTopCities) GetUpdatedAt() int32 { // 最活跃日 type WorkAnalysisMostActiveDay struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - DetailJSON string `protobuf:"bytes,2,opt,name=detailJSON,proto3" json:"detailJSON"` // 细节(如当日各项值) - CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + DetailJSON string `protobuf:"bytes,2,opt,name=detailJSON,proto3" json:"detailJSON"` // 细节(如当日各项值) + CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisMostActiveDay) Reset() { *x = WorkAnalysisMostActiveDay{} - mi := &file_pb_fiee_cast_proto_msgTypes[98] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[98] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisMostActiveDay) String() string { @@ -7824,7 +8144,7 @@ func (*WorkAnalysisMostActiveDay) ProtoMessage() {} func (x *WorkAnalysisMostActiveDay) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[98] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7869,20 +8189,23 @@ func (x *WorkAnalysisMostActiveDay) GetUpdatedAt() int32 { // 最佳发布时间 type WorkAnalysisBestPostTime struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - DetailJSON string `protobuf:"bytes,2,opt,name=detailJSON,proto3" json:"detailJSON"` // 细节(如最佳发布时间) - CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + DetailJSON string `protobuf:"bytes,2,opt,name=detailJSON,proto3" json:"detailJSON"` // 细节(如最佳发布时间) + CreatedAt int32 `protobuf:"varint,3,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,4,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisBestPostTime) Reset() { *x = WorkAnalysisBestPostTime{} - mi := &file_pb_fiee_cast_proto_msgTypes[99] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[99] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisBestPostTime) String() string { @@ -7893,7 +8216,7 @@ func (*WorkAnalysisBestPostTime) ProtoMessage() {} func (x *WorkAnalysisBestPostTime) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[99] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -7938,21 +8261,24 @@ func (x *WorkAnalysisBestPostTime) GetUpdatedAt() int32 { // 扩展信息 type WorkAnalysisExtra struct { - state protoimpl.MessageState `protogen:"open.v1"` - AnalysisUuid string `protobuf:"bytes,1,opt,name=analysisUuid,proto3" json:"analysisUuid"` // 数据分析uuid - ArtistConfirmedTime int64 `protobuf:"varint,2,opt,name=artistConfirmedTime,proto3" json:"artistConfirmedTime"` // 艺人确认时间 - CostType uint32 `protobuf:"varint,3,opt,name=costType,proto3" json:"costType"` // 计费类型 1 套餐 2 增值 - CreatedAt int32 `protobuf:"varint,4,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,5,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AnalysisUuid string `protobuf:"bytes,1,opt,name=analysisUuid,proto3" json:"analysisUuid"` // 数据分析uuid + ArtistConfirmedTime int64 `protobuf:"varint,2,opt,name=artistConfirmedTime,proto3" json:"artistConfirmedTime"` // 艺人确认时间 + CostType uint32 `protobuf:"varint,3,opt,name=costType,proto3" json:"costType"` // 计费类型 1 套餐 2 增值 + CreatedAt int32 `protobuf:"varint,4,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,5,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkAnalysisExtra) Reset() { *x = WorkAnalysisExtra{} - mi := &file_pb_fiee_cast_proto_msgTypes[100] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[100] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisExtra) String() string { @@ -7963,7 +8289,7 @@ func (*WorkAnalysisExtra) ProtoMessage() {} func (x *WorkAnalysisExtra) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[100] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8014,17 +8340,20 @@ func (x *WorkAnalysisExtra) GetUpdatedAt() int32 { } type GetWorkAnalysisDetailReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID } func (x *GetWorkAnalysisDetailReq) Reset() { *x = GetWorkAnalysisDetailReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[101] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[101] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetWorkAnalysisDetailReq) String() string { @@ -8035,7 +8364,7 @@ func (*GetWorkAnalysisDetailReq) ProtoMessage() {} func (x *GetWorkAnalysisDetailReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[101] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8058,17 +8387,20 @@ func (x *GetWorkAnalysisDetailReq) GetUuid() string { } type GetLatestWorkAnalysisReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - SubNum string `protobuf:"bytes,1,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + SubNum string `protobuf:"bytes,1,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 } func (x *GetLatestWorkAnalysisReq) Reset() { *x = GetLatestWorkAnalysisReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[102] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[102] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetLatestWorkAnalysisReq) String() string { @@ -8079,7 +8411,7 @@ func (*GetLatestWorkAnalysisReq) ProtoMessage() {} func (x *GetLatestWorkAnalysisReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[102] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8102,7 +8434,10 @@ func (x *GetLatestWorkAnalysisReq) GetSubNum() string { } type GetWorkAnalysisResp struct { - state protoimpl.MessageState `protogen:"open.v1"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 @@ -8141,15 +8476,15 @@ type GetWorkAnalysisResp struct { MostActiveDaySeries *WorkAnalysisMostActiveDay `protobuf:"bytes,36,opt,name=mostActiveDaySeries,proto3" json:"mostActiveDaySeries"` // 最活跃日 BestPostTimeSeries *WorkAnalysisBestPostTime `protobuf:"bytes,37,opt,name=bestPostTimeSeries,proto3" json:"bestPostTimeSeries"` // 最佳发布时间 UpdatedAt string `protobuf:"bytes,38,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache } func (x *GetWorkAnalysisResp) Reset() { *x = GetWorkAnalysisResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[103] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[103] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetWorkAnalysisResp) String() string { @@ -8160,7 +8495,7 @@ func (*GetWorkAnalysisResp) ProtoMessage() {} func (x *GetWorkAnalysisResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[103] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8442,7 +8777,10 @@ func (x *GetWorkAnalysisResp) GetUpdatedAt() string { } type GetWorkAnalysisDetailResp struct { - state protoimpl.MessageState `protogen:"open.v1"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 @@ -8483,15 +8821,15 @@ type GetWorkAnalysisDetailResp struct { Extra *WorkAnalysisExtra `protobuf:"bytes,38,opt,name=extra,proto3" json:"extra"` // 扩展信息 CreatedAt string `protobuf:"bytes,39,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 UpdatedAt string `protobuf:"bytes,40,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache } func (x *GetWorkAnalysisDetailResp) Reset() { *x = GetWorkAnalysisDetailResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[104] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[104] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetWorkAnalysisDetailResp) String() string { @@ -8502,7 +8840,7 @@ func (*GetWorkAnalysisDetailResp) ProtoMessage() {} func (x *GetWorkAnalysisDetailResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[104] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8798,29 +9136,32 @@ func (x *GetWorkAnalysisDetailResp) GetUpdatedAt() string { } type ListWorkAnalysisReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - UuidList []string `protobuf:"bytes,1,rep,name=uuidList,proto3" json:"uuidList"` // UUID列表 - SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - ArtistVal string `protobuf:"bytes,3,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 - Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态 - ComfirmType int32 `protobuf:"varint,5,opt,name=comfirmType,proto3" json:"comfirmType"` // 确认类型 - StatusUpdateTimeStart string `protobuf:"bytes,6,opt,name=statusUpdateTimeStart,proto3" json:"statusUpdateTimeStart"` // 状态更新时间开始 - StatusUpdateTimeEnd string `protobuf:"bytes,7,opt,name=statusUpdateTimeEnd,proto3" json:"statusUpdateTimeEnd"` // 状态更新时间结束 - SubmitStartTime string `protobuf:"bytes,8,opt,name=submitStartTime,proto3" json:"submitStartTime"` // 提交时间开始 - SubmitEndTime string `protobuf:"bytes,9,opt,name=submitEndTime,proto3" json:"submitEndTime"` // 提交时间结束 - Page int32 `protobuf:"varint,10,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,11,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - StatusList []uint32 `protobuf:"varint,12,rep,packed,name=statusList,proto3" json:"statusList"` // 状态列表 - ArtistUuid string `protobuf:"bytes,13,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + UuidList []string `protobuf:"bytes,1,rep,name=uuidList,proto3" json:"uuidList"` // UUID列表 + SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + ArtistVal string `protobuf:"bytes,3,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 + Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态 + ComfirmType int32 `protobuf:"varint,5,opt,name=comfirmType,proto3" json:"comfirmType"` // 确认类型 + StatusUpdateTimeStart string `protobuf:"bytes,6,opt,name=statusUpdateTimeStart,proto3" json:"statusUpdateTimeStart"` // 状态更新时间开始 + StatusUpdateTimeEnd string `protobuf:"bytes,7,opt,name=statusUpdateTimeEnd,proto3" json:"statusUpdateTimeEnd"` // 状态更新时间结束 + SubmitStartTime string `protobuf:"bytes,8,opt,name=submitStartTime,proto3" json:"submitStartTime"` // 提交时间开始 + SubmitEndTime string `protobuf:"bytes,9,opt,name=submitEndTime,proto3" json:"submitEndTime"` // 提交时间结束 + Page int32 `protobuf:"varint,10,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,11,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 + StatusList []uint32 `protobuf:"varint,12,rep,packed,name=statusList,proto3" json:"statusList"` // 状态列表 + ArtistUuid string `protobuf:"bytes,13,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID } func (x *ListWorkAnalysisReq) Reset() { *x = ListWorkAnalysisReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[105] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[105] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListWorkAnalysisReq) String() string { @@ -8831,7 +9172,7 @@ func (*ListWorkAnalysisReq) ProtoMessage() {} func (x *ListWorkAnalysisReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[105] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -8938,31 +9279,34 @@ func (x *ListWorkAnalysisReq) GetArtistUuid() string { } type WorkAnalysisInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistID string `protobuf:"bytes,4,opt,name=artistID,proto3" json:"artistID"` // 艺人ID - ArtistPhone string `protobuf:"bytes,5,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - OperatorID string `protobuf:"bytes,6,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID - OperatorName string `protobuf:"bytes,7,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 - WorkAnalysisStatus uint32 `protobuf:"varint,8,opt,name=workAnalysisStatus,proto3" json:"workAnalysisStatus"` // 状态 - Reason string `protobuf:"bytes,9,opt,name=reason,proto3" json:"reason"` // 原因 - ComfirmType int32 `protobuf:"varint,10,opt,name=comfirmType,proto3" json:"comfirmType"` // 确认类型 - SubmitTime string `protobuf:"bytes,11,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 - StatusUpdateTime string `protobuf:"bytes,12,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` // 状态更新时间 - PdfUrl string `protobuf:"bytes,13,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 - ApprovalID string `protobuf:"bytes,14,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID - Title string `protobuf:"bytes,15,opt,name=title,proto3" json:"title"` // 标题 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID + SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + ArtistName string `protobuf:"bytes,3,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistID string `protobuf:"bytes,4,opt,name=artistID,proto3" json:"artistID"` // 艺人ID + ArtistPhone string `protobuf:"bytes,5,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + OperatorID string `protobuf:"bytes,6,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID + OperatorName string `protobuf:"bytes,7,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 + WorkAnalysisStatus uint32 `protobuf:"varint,8,opt,name=workAnalysisStatus,proto3" json:"workAnalysisStatus"` // 状态 + Reason string `protobuf:"bytes,9,opt,name=reason,proto3" json:"reason"` // 原因 + ComfirmType int32 `protobuf:"varint,10,opt,name=comfirmType,proto3" json:"comfirmType"` // 确认类型 + SubmitTime string `protobuf:"bytes,11,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 + StatusUpdateTime string `protobuf:"bytes,12,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` // 状态更新时间 + PdfUrl string `protobuf:"bytes,13,opt,name=pdfUrl,proto3" json:"pdfUrl"` // pdf的url链接 + ApprovalID string `protobuf:"bytes,14,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID + Title string `protobuf:"bytes,15,opt,name=title,proto3" json:"title"` // 标题 } func (x *WorkAnalysisInfo) Reset() { *x = WorkAnalysisInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[106] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[106] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkAnalysisInfo) String() string { @@ -8973,7 +9317,7 @@ func (*WorkAnalysisInfo) ProtoMessage() {} func (x *WorkAnalysisInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[106] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9094,18 +9438,21 @@ func (x *WorkAnalysisInfo) GetTitle() string { } type ListWorkAnalysisResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*WorkAnalysisInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 作品分析列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*WorkAnalysisInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 作品分析列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *ListWorkAnalysisResp) Reset() { *x = ListWorkAnalysisResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[107] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[107] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListWorkAnalysisResp) String() string { @@ -9116,7 +9463,7 @@ func (*ListWorkAnalysisResp) ProtoMessage() {} func (x *ListWorkAnalysisResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[107] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9146,17 +9493,20 @@ func (x *ListWorkAnalysisResp) GetCount() int64 { } type DeleteWorkAnalysisReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 分析UUID } func (x *DeleteWorkAnalysisReq) Reset() { *x = DeleteWorkAnalysisReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[108] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[108] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DeleteWorkAnalysisReq) String() string { @@ -9167,7 +9517,7 @@ func (*DeleteWorkAnalysisReq) ProtoMessage() {} func (x *DeleteWorkAnalysisReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[108] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9191,24 +9541,27 @@ func (x *DeleteWorkAnalysisReq) GetUuid() string { // 艺人数据列表请求 type ArtistDataListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 - BundleName string `protobuf:"bytes,2,opt,name=bundleName,proto3" json:"bundleName"` // 套餐名称 - ExpiredTimeStart string `protobuf:"bytes,3,opt,name=expiredTimeStart,proto3" json:"expiredTimeStart"` // 过期时间开始 - ExpiredTimeEnd string `protobuf:"bytes,4,opt,name=expiredTimeEnd,proto3" json:"expiredTimeEnd"` // 过期时间结束 - SubmitTimeStart string `protobuf:"bytes,5,opt,name=submitTimeStart,proto3" json:"submitTimeStart"` // 提交时间开始 - SubmitTimeEnd string `protobuf:"bytes,6,opt,name=submitTimeEnd,proto3" json:"submitTimeEnd"` // 提交时间结束 - Page int32 `protobuf:"varint,7,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,8,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 + BundleName string `protobuf:"bytes,2,opt,name=bundleName,proto3" json:"bundleName"` // 套餐名称 + ExpiredTimeStart string `protobuf:"bytes,3,opt,name=expiredTimeStart,proto3" json:"expiredTimeStart"` // 过期时间开始 + ExpiredTimeEnd string `protobuf:"bytes,4,opt,name=expiredTimeEnd,proto3" json:"expiredTimeEnd"` // 过期时间结束 + SubmitTimeStart string `protobuf:"bytes,5,opt,name=submitTimeStart,proto3" json:"submitTimeStart"` // 提交时间开始 + SubmitTimeEnd string `protobuf:"bytes,6,opt,name=submitTimeEnd,proto3" json:"submitTimeEnd"` // 提交时间结束 + Page int32 `protobuf:"varint,7,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,8,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 } func (x *ArtistDataListReq) Reset() { *x = ArtistDataListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[109] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[109] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistDataListReq) String() string { @@ -9219,7 +9572,7 @@ func (*ArtistDataListReq) ProtoMessage() {} func (x *ArtistDataListReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[109] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9292,35 +9645,38 @@ func (x *ArtistDataListReq) GetPageSize() int32 { // 艺人数据列表响应项 type ArtistDataRespItem struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistName string `protobuf:"bytes,1,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - BundleName string `protobuf:"bytes,5,opt,name=bundleName,proto3" json:"bundleName"` // 套餐名称 - AccountNumber int32 `protobuf:"varint,6,opt,name=accountNumber,proto3" json:"accountNumber"` // 账号总数 - AccountConsumptionNumber int32 `protobuf:"varint,7,opt,name=accountConsumptionNumber,proto3" json:"accountConsumptionNumber"` // 账号使用数 - DataAnalysisNumber int32 `protobuf:"varint,8,opt,name=dataAnalysisNumber,proto3" json:"dataAnalysisNumber"` // 数据分析总数 - DataAnalysisConsumptionNumber int32 `protobuf:"varint,9,opt,name=dataAnalysisConsumptionNumber,proto3" json:"dataAnalysisConsumptionNumber"` // 数据分析使用数 - SubmitTime string `protobuf:"bytes,10,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 - FansCount int64 `protobuf:"varint,11,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 - ViewsCount int64 `protobuf:"varint,12,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 - LikesCount int64 `protobuf:"varint,13,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,14,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,15,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - CastWorkCount int64 `protobuf:"varint,16,opt,name=castWorkCount,proto3" json:"castWorkCount"` // 作品数(视频+图片) - ExpiredTime string `protobuf:"bytes,17,opt,name=expiredTime,proto3" json:"expiredTime"` // 过期时间 - VideoCount int64 `protobuf:"varint,18,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 - ImageCount int64 `protobuf:"varint,19,opt,name=imageCount,proto3" json:"imageCount"` // 图文数 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistName string `protobuf:"bytes,1,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + BundleName string `protobuf:"bytes,5,opt,name=bundleName,proto3" json:"bundleName"` // 套餐名称 + AccountNumber int32 `protobuf:"varint,6,opt,name=accountNumber,proto3" json:"accountNumber"` // 账号总数 + AccountConsumptionNumber int32 `protobuf:"varint,7,opt,name=accountConsumptionNumber,proto3" json:"accountConsumptionNumber"` // 账号使用数 + DataAnalysisNumber int32 `protobuf:"varint,8,opt,name=dataAnalysisNumber,proto3" json:"dataAnalysisNumber"` // 数据分析总数 + DataAnalysisConsumptionNumber int32 `protobuf:"varint,9,opt,name=dataAnalysisConsumptionNumber,proto3" json:"dataAnalysisConsumptionNumber"` // 数据分析使用数 + SubmitTime string `protobuf:"bytes,10,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 + FansCount int64 `protobuf:"varint,11,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 + ViewsCount int64 `protobuf:"varint,12,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,13,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,14,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,15,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + CastWorkCount int64 `protobuf:"varint,16,opt,name=castWorkCount,proto3" json:"castWorkCount"` // 作品数(视频+图片) + ExpiredTime string `protobuf:"bytes,17,opt,name=expiredTime,proto3" json:"expiredTime"` // 过期时间 + VideoCount int64 `protobuf:"varint,18,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 + ImageCount int64 `protobuf:"varint,19,opt,name=imageCount,proto3" json:"imageCount"` // 图文数 } func (x *ArtistDataRespItem) Reset() { *x = ArtistDataRespItem{} - mi := &file_pb_fiee_cast_proto_msgTypes[110] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[110] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistDataRespItem) String() string { @@ -9331,7 +9687,7 @@ func (*ArtistDataRespItem) ProtoMessage() {} func (x *ArtistDataRespItem) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[110] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9481,18 +9837,21 @@ func (x *ArtistDataRespItem) GetImageCount() int64 { // 艺人数据列表响应 type ArtistDataListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*ArtistDataRespItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 艺人数据列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*ArtistDataRespItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 艺人数据列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *ArtistDataListResp) Reset() { *x = ArtistDataListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[111] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[111] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistDataListResp) String() string { @@ -9503,7 +9862,7 @@ func (*ArtistDataListResp) ProtoMessage() {} func (x *ArtistDataListResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[111] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9534,21 +9893,24 @@ func (x *ArtistDataListResp) GetCount() int64 { // 自媒体数据列表请求 type MediaDataListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 - PlatformUserName string `protobuf:"bytes,2,opt,name=platformUserName,proto3" json:"platformUserName"` // 平台用户名 - PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` // 平台ID - Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistVal string `protobuf:"bytes,1,opt,name=artistVal,proto3" json:"artistVal"` // 艺人搜索值 + PlatformUserName string `protobuf:"bytes,2,opt,name=platformUserName,proto3" json:"platformUserName"` // 平台用户名 + PlatformID uint32 `protobuf:"varint,3,opt,name=platformID,proto3" json:"platformID"` // 平台ID + Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 } func (x *MediaDataListReq) Reset() { *x = MediaDataListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[112] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[112] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaDataListReq) String() string { @@ -9559,7 +9921,7 @@ func (*MediaDataListReq) ProtoMessage() {} func (x *MediaDataListReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[112] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9611,31 +9973,34 @@ func (x *MediaDataListReq) GetPageSize() int32 { // 自媒体数据列表响应项 type MediaDataListItem struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistName string `protobuf:"bytes,1,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - PlatformUserName string `protobuf:"bytes,5,opt,name=platformUserName,proto3" json:"platformUserName"` // 平台用户名 - PlatformID uint32 `protobuf:"varint,6,opt,name=platformID,proto3" json:"platformID"` // 平台ID - SubmitTime string `protobuf:"bytes,7,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 - FansCount int64 `protobuf:"varint,8,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 - ViewsCount int64 `protobuf:"varint,9,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 - LikesCount int64 `protobuf:"varint,10,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,11,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,12,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - CastWorkCount int64 `protobuf:"varint,13,opt,name=castWorkCount,proto3" json:"castWorkCount"` // 作品数(视频+图片) - VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 - ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图文数 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistName string `protobuf:"bytes,1,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + ArtistPhone string `protobuf:"bytes,4,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + PlatformUserName string `protobuf:"bytes,5,opt,name=platformUserName,proto3" json:"platformUserName"` // 平台用户名 + PlatformID uint32 `protobuf:"varint,6,opt,name=platformID,proto3" json:"platformID"` // 平台ID + SubmitTime string `protobuf:"bytes,7,opt,name=submitTime,proto3" json:"submitTime"` // 提交时间 + FansCount int64 `protobuf:"varint,8,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 + ViewsCount int64 `protobuf:"varint,9,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,10,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,11,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,12,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + CastWorkCount int64 `protobuf:"varint,13,opt,name=castWorkCount,proto3" json:"castWorkCount"` // 作品数(视频+图片) + VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 + ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图文数 } func (x *MediaDataListItem) Reset() { *x = MediaDataListItem{} - mi := &file_pb_fiee_cast_proto_msgTypes[113] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[113] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaDataListItem) String() string { @@ -9646,7 +10011,7 @@ func (*MediaDataListItem) ProtoMessage() {} func (x *MediaDataListItem) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[113] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9768,18 +10133,21 @@ func (x *MediaDataListItem) GetImageCount() int64 { // 自媒体数据列表响应 type MediaDataListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*MediaDataListItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 自媒体数据列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*MediaDataListItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 自媒体数据列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *MediaDataListResp) Reset() { *x = MediaDataListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[114] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[114] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaDataListResp) String() string { @@ -9790,7 +10158,7 @@ func (*MediaDataListResp) ProtoMessage() {} func (x *MediaDataListResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[114] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9821,17 +10189,20 @@ func (x *MediaDataListResp) GetCount() int64 { // 数据概览请求 type DataOverviewReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Date string `protobuf:"bytes,1,opt,name=date,proto3" json:"date"` // 日期,格式:YYYY-MM-DD,如:2025-12-08 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Date string `protobuf:"bytes,1,opt,name=date,proto3" json:"date"` // 日期,格式:YYYY-MM-DD,如:2025-12-08 } func (x *DataOverviewReq) Reset() { *x = DataOverviewReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[115] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[115] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DataOverviewReq) String() string { @@ -9842,7 +10213,7 @@ func (*DataOverviewReq) ProtoMessage() {} func (x *DataOverviewReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[115] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -9866,36 +10237,39 @@ func (x *DataOverviewReq) GetDate() string { // 数据概览响应 type DataOverviewResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - AccountCount int64 `protobuf:"varint,1,opt,name=accountCount,proto3" json:"accountCount"` // 账号总数 - TodayAccountCount int64 `protobuf:"varint,2,opt,name=todayAccountCount,proto3" json:"todayAccountCount"` // 今日新增账号数 - FansCount int64 `protobuf:"varint,3,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝总数 - TodayFansCount int64 `protobuf:"varint,4,opt,name=todayFansCount,proto3" json:"todayFansCount"` // 今日新增粉丝数 - ViewsCount int64 `protobuf:"varint,5,opt,name=viewsCount,proto3" json:"viewsCount"` // 播放量总数 - TodayViewsCount int64 `protobuf:"varint,6,opt,name=todayViewsCount,proto3" json:"todayViewsCount"` // 今日新增播放量数 - LikesCount int64 `protobuf:"varint,7,opt,name=likesCount,proto3" json:"likesCount"` // 点赞总数 - TodayLikesCount int64 `protobuf:"varint,8,opt,name=todayLikesCount,proto3" json:"todayLikesCount"` // 今日新增点赞数 - CommentsCount int64 `protobuf:"varint,9,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论总数 - TodayCommentsCount int64 `protobuf:"varint,10,opt,name=todayCommentsCount,proto3" json:"todayCommentsCount"` // 今日新增评论数 - SharesCount int64 `protobuf:"varint,11,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享总数 - TodaySharesCount int64 `protobuf:"varint,12,opt,name=todaySharesCount,proto3" json:"todaySharesCount"` // 今日分享总数 - ImageCount int64 `protobuf:"varint,13,opt,name=imageCount,proto3" json:"imageCount"` // 图文总数 - TodayImageCount int64 `protobuf:"varint,14,opt,name=todayImageCount,proto3" json:"todayImageCount"` // 今日新增图文数 - VideoCount int64 `protobuf:"varint,15,opt,name=videoCount,proto3" json:"videoCount"` // 视频总数 - TodayVideoCount int64 `protobuf:"varint,16,opt,name=todayVideoCount,proto3" json:"todayVideoCount"` // 今日新增视频数 - ConfirmDataCount int64 `protobuf:"varint,17,opt,name=confirmDataCount,proto3" json:"confirmDataCount"` // 已确认数据总数 - TodayConfirmDataCount int64 `protobuf:"varint,18,opt,name=todayConfirmDataCount,proto3" json:"todayConfirmDataCount"` // 今日新增确认数据总数 - ToBeConfirmedDataCount int64 `protobuf:"varint,19,opt,name=toBeConfirmedDataCount,proto3" json:"toBeConfirmedDataCount"` // 待确认数据总数 - ApprovingDataCount int64 `protobuf:"varint,20,opt,name=approvingDataCount,proto3" json:"approvingDataCount"` // 审批中数据总数 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + AccountCount int64 `protobuf:"varint,1,opt,name=accountCount,proto3" json:"accountCount"` // 账号总数 + TodayAccountCount int64 `protobuf:"varint,2,opt,name=todayAccountCount,proto3" json:"todayAccountCount"` // 今日新增账号数 + FansCount int64 `protobuf:"varint,3,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝总数 + TodayFansCount int64 `protobuf:"varint,4,opt,name=todayFansCount,proto3" json:"todayFansCount"` // 今日新增粉丝数 + ViewsCount int64 `protobuf:"varint,5,opt,name=viewsCount,proto3" json:"viewsCount"` // 播放量总数 + TodayViewsCount int64 `protobuf:"varint,6,opt,name=todayViewsCount,proto3" json:"todayViewsCount"` // 今日新增播放量数 + LikesCount int64 `protobuf:"varint,7,opt,name=likesCount,proto3" json:"likesCount"` // 点赞总数 + TodayLikesCount int64 `protobuf:"varint,8,opt,name=todayLikesCount,proto3" json:"todayLikesCount"` // 今日新增点赞数 + CommentsCount int64 `protobuf:"varint,9,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论总数 + TodayCommentsCount int64 `protobuf:"varint,10,opt,name=todayCommentsCount,proto3" json:"todayCommentsCount"` // 今日新增评论数 + SharesCount int64 `protobuf:"varint,11,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享总数 + TodaySharesCount int64 `protobuf:"varint,12,opt,name=todaySharesCount,proto3" json:"todaySharesCount"` // 今日分享总数 + ImageCount int64 `protobuf:"varint,13,opt,name=imageCount,proto3" json:"imageCount"` // 图文总数 + TodayImageCount int64 `protobuf:"varint,14,opt,name=todayImageCount,proto3" json:"todayImageCount"` // 今日新增图文数 + VideoCount int64 `protobuf:"varint,15,opt,name=videoCount,proto3" json:"videoCount"` // 视频总数 + TodayVideoCount int64 `protobuf:"varint,16,opt,name=todayVideoCount,proto3" json:"todayVideoCount"` // 今日新增视频数 + ConfirmDataCount int64 `protobuf:"varint,17,opt,name=confirmDataCount,proto3" json:"confirmDataCount"` // 已确认数据总数 + TodayConfirmDataCount int64 `protobuf:"varint,18,opt,name=todayConfirmDataCount,proto3" json:"todayConfirmDataCount"` // 今日新增确认数据总数 + ToBeConfirmedDataCount int64 `protobuf:"varint,19,opt,name=toBeConfirmedDataCount,proto3" json:"toBeConfirmedDataCount"` // 待确认数据总数 + ApprovingDataCount int64 `protobuf:"varint,20,opt,name=approvingDataCount,proto3" json:"approvingDataCount"` // 审批中数据总数 } func (x *DataOverviewResp) Reset() { *x = DataOverviewResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[116] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[116] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DataOverviewResp) String() string { @@ -9906,7 +10280,7 @@ func (*DataOverviewResp) ProtoMessage() {} func (x *DataOverviewResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[116] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10063,22 +10437,25 @@ func (x *DataOverviewResp) GetApprovingDataCount() int64 { // 艺人指标系列请求 type ArtistMetricsSeriesReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUUID string `protobuf:"bytes,1,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID - PeriodTypeFans uint32 `protobuf:"varint,2,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 - PeriodTypeViews uint32 `protobuf:"varint,3,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 - PeriodTypeLikes uint32 `protobuf:"varint,4,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 - PeriodTypeComments uint32 `protobuf:"varint,5,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 - PeriodTypeShares uint32 `protobuf:"varint,6,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUUID string `protobuf:"bytes,1,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID + PeriodTypeFans uint32 `protobuf:"varint,2,opt,name=periodTypeFans,proto3" json:"periodTypeFans"` // 粉丝数周期类型 1 日 2 周 3 月 + PeriodTypeViews uint32 `protobuf:"varint,3,opt,name=periodTypeViews,proto3" json:"periodTypeViews"` // 播放量周期类型 1 日 2 周 3 月 + PeriodTypeLikes uint32 `protobuf:"varint,4,opt,name=periodTypeLikes,proto3" json:"periodTypeLikes"` // 点赞数周期类型 1 日 2 周 3 月 + PeriodTypeComments uint32 `protobuf:"varint,5,opt,name=periodTypeComments,proto3" json:"periodTypeComments"` // 评论数周期类型 1 日 2 周 3 月 + PeriodTypeShares uint32 `protobuf:"varint,6,opt,name=periodTypeShares,proto3" json:"periodTypeShares"` // 分享数周期类型 1 日 2 周 3 月 } func (x *ArtistMetricsSeriesReq) Reset() { *x = ArtistMetricsSeriesReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[117] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[117] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistMetricsSeriesReq) String() string { @@ -10089,7 +10466,7 @@ func (*ArtistMetricsSeriesReq) ProtoMessage() {} func (x *ArtistMetricsSeriesReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[117] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10148,7 +10525,10 @@ func (x *ArtistMetricsSeriesReq) GetPeriodTypeShares() uint32 { // 艺人指标系列响应 type ArtistMetricsSeriesResp struct { - state protoimpl.MessageState `protogen:"open.v1"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + FansSeries *WorkAnalysisFansSeries `protobuf:"bytes,1,opt,name=fansSeries,proto3" json:"fansSeries"` // 粉丝数系列 ViewsSeries *WorkAnalysisViewsSeries `protobuf:"bytes,2,opt,name=viewsSeries,proto3" json:"viewsSeries"` // 播放量系列 LikesSeries *WorkAnalysisLikesSeries `protobuf:"bytes,3,opt,name=likesSeries,proto3" json:"likesSeries"` // 点赞数系列 @@ -10156,15 +10536,15 @@ type ArtistMetricsSeriesResp struct { SharesSeries *WorkAnalysisSharesSeries `protobuf:"bytes,5,opt,name=sharesSeries,proto3" json:"sharesSeries"` // 分享数系列 BestPostTime *WorkAnalysisBestPostTime `protobuf:"bytes,6,opt,name=bestPostTime,proto3" json:"bestPostTime"` // 最佳发布时间 MostActiveDay *WorkAnalysisMostActiveDay `protobuf:"bytes,7,opt,name=mostActiveDay,proto3" json:"mostActiveDay"` // 最活跃日期 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache } func (x *ArtistMetricsSeriesResp) Reset() { *x = ArtistMetricsSeriesResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[118] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[118] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistMetricsSeriesResp) String() string { @@ -10175,7 +10555,7 @@ func (*ArtistMetricsSeriesResp) ProtoMessage() {} func (x *ArtistMetricsSeriesResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[118] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10241,19 +10621,22 @@ func (x *ArtistMetricsSeriesResp) GetMostActiveDay() *WorkAnalysisMostActiveDay // 艺人指标日期窗口请求 type ArtistMetricsDailyWindowReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUUID string `protobuf:"bytes,1,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID - PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` // 平台ID - Date int32 `protobuf:"varint,3,opt,name=date,proto3" json:"date"` // 日期 YYYYMMDD - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUUID string `protobuf:"bytes,1,opt,name=artistUUID,proto3" json:"artistUUID"` // 艺人UUID + PlatformID uint32 `protobuf:"varint,2,opt,name=platformID,proto3" json:"platformID"` // 平台ID + Date int32 `protobuf:"varint,3,opt,name=date,proto3" json:"date"` // 日期 YYYYMMDD } func (x *ArtistMetricsDailyWindowReq) Reset() { *x = ArtistMetricsDailyWindowReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[119] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[119] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistMetricsDailyWindowReq) String() string { @@ -10264,7 +10647,7 @@ func (*ArtistMetricsDailyWindowReq) ProtoMessage() {} func (x *ArtistMetricsDailyWindowReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[119] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10302,18 +10685,21 @@ func (x *ArtistMetricsDailyWindowReq) GetDate() int32 { // 简单数据点 type SimplePoint struct { - state protoimpl.MessageState `protogen:"open.v1"` - Date int32 `protobuf:"varint,1,opt,name=date,proto3" json:"date"` // 日期 YYYYMMDD - Value int64 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Date int32 `protobuf:"varint,1,opt,name=date,proto3" json:"date"` // 日期 YYYYMMDD + Value int64 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 } func (x *SimplePoint) Reset() { *x = SimplePoint{} - mi := &file_pb_fiee_cast_proto_msgTypes[120] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[120] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *SimplePoint) String() string { @@ -10324,7 +10710,7 @@ func (*SimplePoint) ProtoMessage() {} func (x *SimplePoint) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[120] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10355,18 +10741,21 @@ func (x *SimplePoint) GetValue() int64 { // 最佳发布时间点 type BestPostTimePoint struct { - state protoimpl.MessageState `protogen:"open.v1"` - TimePoint string `protobuf:"bytes,1,opt,name=timePoint,proto3" json:"timePoint"` // 时间段,如 "0-3", "3-6" 等 - Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + TimePoint string `protobuf:"bytes,1,opt,name=timePoint,proto3" json:"timePoint"` // 时间段,如 "0-3", "3-6" 等 + Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 } func (x *BestPostTimePoint) Reset() { *x = BestPostTimePoint{} - mi := &file_pb_fiee_cast_proto_msgTypes[121] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[121] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *BestPostTimePoint) String() string { @@ -10377,7 +10766,7 @@ func (*BestPostTimePoint) ProtoMessage() {} func (x *BestPostTimePoint) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[121] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10408,18 +10797,21 @@ func (x *BestPostTimePoint) GetValue() int32 { // 最活跃日期点 type MostActiveDayPoint struct { - state protoimpl.MessageState `protogen:"open.v1"` - Day int32 `protobuf:"varint,1,opt,name=day,proto3" json:"day"` // 天数 1-7 - Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Day int32 `protobuf:"varint,1,opt,name=day,proto3" json:"day"` // 天数 1-7 + Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value"` // 值 } func (x *MostActiveDayPoint) Reset() { *x = MostActiveDayPoint{} - mi := &file_pb_fiee_cast_proto_msgTypes[122] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[122] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MostActiveDayPoint) String() string { @@ -10430,7 +10822,7 @@ func (*MostActiveDayPoint) ProtoMessage() {} func (x *MostActiveDayPoint) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[122] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10461,28 +10853,31 @@ func (x *MostActiveDayPoint) GetValue() int32 { // 艺人指标日期窗口响应 type ArtistMetricsDailyWindowResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - FansCount int64 `protobuf:"varint,1,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 - ViewsCount int64 `protobuf:"varint,2,opt,name=viewsCount,proto3" json:"viewsCount"` // 播放量 - LikesCount int64 `protobuf:"varint,3,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,4,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,5,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - Fans []*SimplePoint `protobuf:"bytes,6,rep,name=fans,proto3" json:"fans"` // 粉丝数序列 - Views []*SimplePoint `protobuf:"bytes,7,rep,name=views,proto3" json:"views"` // 播放量序列 - Likes []*SimplePoint `protobuf:"bytes,8,rep,name=likes,proto3" json:"likes"` // 点赞数序列 - Comments []*SimplePoint `protobuf:"bytes,9,rep,name=comments,proto3" json:"comments"` // 评论数序列 - Shares []*SimplePoint `protobuf:"bytes,10,rep,name=shares,proto3" json:"shares"` // 分享数序列 - BestPostTime []*BestPostTimePoint `protobuf:"bytes,11,rep,name=bestPostTime,proto3" json:"bestPostTime"` // 最佳发布时间 - MostActiveDay []*MostActiveDayPoint `protobuf:"bytes,12,rep,name=mostActiveDay,proto3" json:"mostActiveDay"` // 最活跃日期 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + FansCount int64 `protobuf:"varint,1,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 + ViewsCount int64 `protobuf:"varint,2,opt,name=viewsCount,proto3" json:"viewsCount"` // 播放量 + LikesCount int64 `protobuf:"varint,3,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,4,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,5,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + Fans []*SimplePoint `protobuf:"bytes,6,rep,name=fans,proto3" json:"fans"` // 粉丝数序列 + Views []*SimplePoint `protobuf:"bytes,7,rep,name=views,proto3" json:"views"` // 播放量序列 + Likes []*SimplePoint `protobuf:"bytes,8,rep,name=likes,proto3" json:"likes"` // 点赞数序列 + Comments []*SimplePoint `protobuf:"bytes,9,rep,name=comments,proto3" json:"comments"` // 评论数序列 + Shares []*SimplePoint `protobuf:"bytes,10,rep,name=shares,proto3" json:"shares"` // 分享数序列 + BestPostTime []*BestPostTimePoint `protobuf:"bytes,11,rep,name=bestPostTime,proto3" json:"bestPostTime"` // 最佳发布时间 + MostActiveDay []*MostActiveDayPoint `protobuf:"bytes,12,rep,name=mostActiveDay,proto3" json:"mostActiveDay"` // 最活跃日期 } func (x *ArtistMetricsDailyWindowResp) Reset() { *x = ArtistMetricsDailyWindowResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[123] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[123] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistMetricsDailyWindowResp) String() string { @@ -10493,7 +10888,7 @@ func (*ArtistMetricsDailyWindowResp) ProtoMessage() {} func (x *ArtistMetricsDailyWindowResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[123] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10594,19 +10989,22 @@ func (x *ArtistMetricsDailyWindowResp) GetMostActiveDay() []*MostActiveDayPoint // 待确认数据列表请求 type TobeConfirmedListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - Page int32 `protobuf:"varint,2,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,3,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + Page int32 `protobuf:"varint,2,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,3,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 } func (x *TobeConfirmedListReq) Reset() { *x = TobeConfirmedListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[124] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[124] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *TobeConfirmedListReq) String() string { @@ -10617,7 +11015,7 @@ func (*TobeConfirmedListReq) ProtoMessage() {} func (x *TobeConfirmedListReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[124] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10655,32 +11053,35 @@ func (x *TobeConfirmedListReq) GetPageSize() int32 { // 待确认数据项 type TobeConfirmedItem struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 标题 - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 内容 - WorkCategory int32 `protobuf:"varint,4,opt,name=workCategory,proto3" json:"workCategory"` // 作品类型 1 图文 2 视频 - UpdateTime string `protobuf:"bytes,5,opt,name=updateTime,proto3" json:"updateTime"` // 更新时间 - WorkStatus int32 `protobuf:"varint,6,opt,name=workStatus,proto3" json:"workStatus"` // 状态 - PlatformIds string `protobuf:"bytes,7,opt,name=platformIds,proto3" json:"platformIds"` // 平台ID集合 - ArtistName string `protobuf:"bytes,8,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 - ArtistUuid string `protobuf:"bytes,9,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - MediaAccUserIds string `protobuf:"bytes,10,opt,name=mediaAccUserIds,proto3" json:"mediaAccUserIds"` // 自媒体账号user_ids集合 - MediaNames string `protobuf:"bytes,11,opt,name=mediaNames,proto3" json:"mediaNames"` // 自媒体账号名称集合 - ConfirmedAt int64 `protobuf:"varint,12,opt,name=confirmedAt,proto3" json:"confirmedAt"` // 确认时间 - ItemType int32 `protobuf:"varint,13,opt,name=itemType,proto3" json:"itemType"` // 类型 1 数据分析 2 作品 - CreatedAt int32 `protobuf:"varint,14,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,15,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - DeletedAt uint64 `protobuf:"varint,16,opt,name=deletedAt,proto3" json:"deletedAt"` // 删除时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` // 标题 + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` // 内容 + WorkCategory int32 `protobuf:"varint,4,opt,name=workCategory,proto3" json:"workCategory"` // 作品类型 1 图文 2 视频 + UpdateTime string `protobuf:"bytes,5,opt,name=updateTime,proto3" json:"updateTime"` // 更新时间 + WorkStatus int32 `protobuf:"varint,6,opt,name=workStatus,proto3" json:"workStatus"` // 状态 + PlatformIds string `protobuf:"bytes,7,opt,name=platformIds,proto3" json:"platformIds"` // 平台ID集合 + ArtistName string `protobuf:"bytes,8,opt,name=artistName,proto3" json:"artistName"` // 艺人名称 + ArtistUuid string `protobuf:"bytes,9,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + MediaAccUserIds string `protobuf:"bytes,10,opt,name=mediaAccUserIds,proto3" json:"mediaAccUserIds"` // 自媒体账号user_ids集合 + MediaNames string `protobuf:"bytes,11,opt,name=mediaNames,proto3" json:"mediaNames"` // 自媒体账号名称集合 + ConfirmedAt int64 `protobuf:"varint,12,opt,name=confirmedAt,proto3" json:"confirmedAt"` // 确认时间 + ItemType int32 `protobuf:"varint,13,opt,name=itemType,proto3" json:"itemType"` // 类型 1 数据分析 2 作品 + CreatedAt int32 `protobuf:"varint,14,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,15,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 + DeletedAt uint64 `protobuf:"varint,16,opt,name=deletedAt,proto3" json:"deletedAt"` // 删除时间 } func (x *TobeConfirmedItem) Reset() { *x = TobeConfirmedItem{} - mi := &file_pb_fiee_cast_proto_msgTypes[125] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[125] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *TobeConfirmedItem) String() string { @@ -10691,7 +11092,7 @@ func (*TobeConfirmedItem) ProtoMessage() {} func (x *TobeConfirmedItem) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[125] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10820,18 +11221,21 @@ func (x *TobeConfirmedItem) GetDeletedAt() uint64 { // 待确认数据列表响应 type TobeConfirmedListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*TobeConfirmedItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 待确认数据列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*TobeConfirmedItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 待确认数据列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *TobeConfirmedListResp) Reset() { *x = TobeConfirmedListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[126] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[126] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *TobeConfirmedListResp) String() string { @@ -10842,7 +11246,7 @@ func (*TobeConfirmedListResp) ProtoMessage() {} func (x *TobeConfirmedListResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[126] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10872,18 +11276,21 @@ func (x *TobeConfirmedListResp) GetCount() int64 { } type UpdateWorkAnalysisApprovalIDReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - ApprovalID string `protobuf:"bytes,2,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + ApprovalID string `protobuf:"bytes,2,opt,name=approvalID,proto3" json:"approvalID"` // 审批ID } func (x *UpdateWorkAnalysisApprovalIDReq) Reset() { *x = UpdateWorkAnalysisApprovalIDReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[127] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[127] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateWorkAnalysisApprovalIDReq) String() string { @@ -10894,7 +11301,7 @@ func (*UpdateWorkAnalysisApprovalIDReq) ProtoMessage() {} func (x *UpdateWorkAnalysisApprovalIDReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[127] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -10925,35 +11332,38 @@ func (x *UpdateWorkAnalysisApprovalIDReq) GetApprovalID() string { // 账号日级指标项 type MediaMetricsDailyItem struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID(可选,为空时自动生成) - ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - MediaAccUserID string `protobuf:"bytes,3,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID - MediaName string `protobuf:"bytes,4,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 - ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - PlatformID uint32 `protobuf:"varint,7,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion - Date int32 `protobuf:"varint,8,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) - FansCount int64 `protobuf:"varint,9,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 - ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 - LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 - ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图片数 - ProfileKey string `protobuf:"bytes,16,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key - IsSuccess uint32 `protobuf:"varint,17,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 - FailReason string `protobuf:"bytes,18,opt,name=failReason,proto3" json:"failReason"` // 失败原因 - FailType uint32 `protobuf:"varint,19,opt,name=failType,proto3" json:"failType"` // 失败类型 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID(可选,为空时自动生成) + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + MediaAccUserID string `protobuf:"bytes,3,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID + MediaName string `protobuf:"bytes,4,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 + ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + PlatformID uint32 `protobuf:"varint,7,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion + Date int32 `protobuf:"varint,8,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) + FansCount int64 `protobuf:"varint,9,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 + ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 + ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图片数 + ProfileKey string `protobuf:"bytes,16,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key + IsSuccess uint32 `protobuf:"varint,17,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 + FailReason string `protobuf:"bytes,18,opt,name=failReason,proto3" json:"failReason"` // 失败原因 + FailType uint32 `protobuf:"varint,19,opt,name=failType,proto3" json:"failType"` // 失败类型 } func (x *MediaMetricsDailyItem) Reset() { *x = MediaMetricsDailyItem{} - mi := &file_pb_fiee_cast_proto_msgTypes[128] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[128] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaMetricsDailyItem) String() string { @@ -10964,7 +11374,7 @@ func (*MediaMetricsDailyItem) ProtoMessage() {} func (x *MediaMetricsDailyItem) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[128] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11114,17 +11524,20 @@ func (x *MediaMetricsDailyItem) GetFailType() uint32 { // 批量插入或更新账号日级指标请求 type UpsertMediaMetricsDailyBatchReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*MediaMetricsDailyItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 指标数据列表 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*MediaMetricsDailyItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 指标数据列表 } func (x *UpsertMediaMetricsDailyBatchReq) Reset() { *x = UpsertMediaMetricsDailyBatchReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[129] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[129] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpsertMediaMetricsDailyBatchReq) String() string { @@ -11135,7 +11548,7 @@ func (*UpsertMediaMetricsDailyBatchReq) ProtoMessage() {} func (x *UpsertMediaMetricsDailyBatchReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[129] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11159,17 +11572,20 @@ func (x *UpsertMediaMetricsDailyBatchReq) GetData() []*MediaMetricsDailyItem { // 批量插入或更新账号日级指标响应 type UpsertMediaMetricsDailyBatchResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success"` // 是否成功 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success"` // 是否成功 } func (x *UpsertMediaMetricsDailyBatchResp) Reset() { *x = UpsertMediaMetricsDailyBatchResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[130] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[130] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpsertMediaMetricsDailyBatchResp) String() string { @@ -11180,7 +11596,7 @@ func (*UpsertMediaMetricsDailyBatchResp) ProtoMessage() {} func (x *UpsertMediaMetricsDailyBatchResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[130] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11204,34 +11620,37 @@ func (x *UpsertMediaMetricsDailyBatchResp) GetSuccess() bool { // 作品日级指标项 type WorkMetricsDailyItem struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID(可选,为空时自动生成) - WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID - ArtistUuid string `protobuf:"bytes,3,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - MediaAccUserID string `protobuf:"bytes,4,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID - MediaName string `protobuf:"bytes,5,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 - ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - PlatformID uint32 `protobuf:"varint,8,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion - Date int32 `protobuf:"varint,9,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) - ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 - LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - PublishMediaID string `protobuf:"bytes,14,opt,name=publishMediaID,proto3" json:"publishMediaID"` // 发布媒体ID - ProfileKey string `protobuf:"bytes,15,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key - IsSuccess uint32 `protobuf:"varint,16,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 - FailReason string `protobuf:"bytes,17,opt,name=failReason,proto3" json:"failReason"` // 失败原因 - FailType uint32 `protobuf:"varint,18,opt,name=failType,proto3" json:"failType"` // 失败类型 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID(可选,为空时自动生成) + WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID + ArtistUuid string `protobuf:"bytes,3,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + MediaAccUserID string `protobuf:"bytes,4,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID + MediaName string `protobuf:"bytes,5,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 + ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + PlatformID uint32 `protobuf:"varint,8,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion + Date int32 `protobuf:"varint,9,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) + ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + PublishMediaID string `protobuf:"bytes,14,opt,name=publishMediaID,proto3" json:"publishMediaID"` // 发布媒体ID + ProfileKey string `protobuf:"bytes,15,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key + IsSuccess uint32 `protobuf:"varint,16,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 + FailReason string `protobuf:"bytes,17,opt,name=failReason,proto3" json:"failReason"` // 失败原因 + FailType uint32 `protobuf:"varint,18,opt,name=failType,proto3" json:"failType"` // 失败类型 } func (x *WorkMetricsDailyItem) Reset() { *x = WorkMetricsDailyItem{} - mi := &file_pb_fiee_cast_proto_msgTypes[131] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[131] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkMetricsDailyItem) String() string { @@ -11242,7 +11661,7 @@ func (*WorkMetricsDailyItem) ProtoMessage() {} func (x *WorkMetricsDailyItem) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[131] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11385,17 +11804,20 @@ func (x *WorkMetricsDailyItem) GetFailType() uint32 { // 批量插入或更新作品日级指标请求 type UpsertWorkMetricsDailyBatchReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*WorkMetricsDailyItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 指标数据列表 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*WorkMetricsDailyItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 指标数据列表 } func (x *UpsertWorkMetricsDailyBatchReq) Reset() { *x = UpsertWorkMetricsDailyBatchReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[132] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[132] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpsertWorkMetricsDailyBatchReq) String() string { @@ -11406,7 +11828,7 @@ func (*UpsertWorkMetricsDailyBatchReq) ProtoMessage() {} func (x *UpsertWorkMetricsDailyBatchReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[132] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11430,17 +11852,20 @@ func (x *UpsertWorkMetricsDailyBatchReq) GetData() []*WorkMetricsDailyItem { // 批量插入或更新作品日级指标响应 type UpsertWorkMetricsDailyBatchResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success"` // 是否成功 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success"` // 是否成功 } func (x *UpsertWorkMetricsDailyBatchResp) Reset() { *x = UpsertWorkMetricsDailyBatchResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[133] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[133] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpsertWorkMetricsDailyBatchResp) String() string { @@ -11451,7 +11876,7 @@ func (*UpsertWorkMetricsDailyBatchResp) ProtoMessage() {} func (x *UpsertWorkMetricsDailyBatchResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[133] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11475,21 +11900,24 @@ func (x *UpsertWorkMetricsDailyBatchResp) GetSuccess() bool { // 获取艺人AyrShare信息请求 type GetArtistAyrShareInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID - SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - Status int32 `protobuf:"varint,3,opt,name=status,proto3" json:"status"` // 状态 1 有效 - Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + SubNum string `protobuf:"bytes,2,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + Status int32 `protobuf:"varint,3,opt,name=status,proto3" json:"status"` // 状态 1 有效 + Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 } func (x *GetArtistAyrShareInfoReq) Reset() { *x = GetArtistAyrShareInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[134] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[134] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetArtistAyrShareInfoReq) String() string { @@ -11500,7 +11928,7 @@ func (*GetArtistAyrShareInfoReq) ProtoMessage() {} func (x *GetArtistAyrShareInfoReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[134] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11552,25 +11980,28 @@ func (x *GetArtistAyrShareInfoReq) GetPageSize() int32 { // 艺人AyrShare信息 type ArtistAyrShareInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 - RefId string `protobuf:"bytes,4,opt,name=refId,proto3" json:"refId"` // AyrShare引用ID - ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key - AyrShareCreateTime string `protobuf:"bytes,6,opt,name=ayrShareCreateTime,proto3" json:"ayrShareCreateTime"` // AyrShare创建时间 - Status int32 `protobuf:"varint,7,opt,name=status,proto3" json:"status"` // 状态 1 有效 - CreatedAt int32 `protobuf:"varint,8,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,9,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + SubNum string `protobuf:"bytes,3,opt,name=subNum,proto3" json:"subNum"` // 艺人编号 + RefId string `protobuf:"bytes,4,opt,name=refId,proto3" json:"refId"` // AyrShare引用ID + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key + AyrShareCreateTime string `protobuf:"bytes,6,opt,name=ayrShareCreateTime,proto3" json:"ayrShareCreateTime"` // AyrShare创建时间 + Status int32 `protobuf:"varint,7,opt,name=status,proto3" json:"status"` // 状态 1 有效 + CreatedAt int32 `protobuf:"varint,8,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,9,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *ArtistAyrShareInfo) Reset() { *x = ArtistAyrShareInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[135] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[135] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ArtistAyrShareInfo) String() string { @@ -11581,7 +12012,7 @@ func (*ArtistAyrShareInfo) ProtoMessage() {} func (x *ArtistAyrShareInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[135] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11661,18 +12092,21 @@ func (x *ArtistAyrShareInfo) GetUpdatedAt() int32 { // 获取艺人AyrShare信息响应 type GetArtistAyrShareInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*ArtistAyrShareInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 艺人AyrShare信息列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*ArtistAyrShareInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 艺人AyrShare信息列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *GetArtistAyrShareInfoResp) Reset() { *x = GetArtistAyrShareInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[136] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[136] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetArtistAyrShareInfoResp) String() string { @@ -11683,7 +12117,7 @@ func (*GetArtistAyrShareInfoResp) ProtoMessage() {} func (x *GetArtistAyrShareInfoResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[136] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11714,20 +12148,23 @@ func (x *GetArtistAyrShareInfoResp) GetCount() int64 { // 获取作品平台信息列表请求 type ListWorkPlatformInfoReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - PlatformIDs []uint32 `protobuf:"varint,1,rep,packed,name=platformIDs,proto3" json:"platformIDs"` // 平台ID列表 - PublishMediaStatus int32 `protobuf:"varint,2,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` // 发布状态 0 全部 1 正常 2 异常 - Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlatformIDs []uint32 `protobuf:"varint,1,rep,packed,name=platformIDs,proto3" json:"platformIDs"` // 平台ID列表 + PublishMediaStatus int32 `protobuf:"varint,2,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` // 发布状态 0 全部 1 正常 2 异常 + Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 } func (x *ListWorkPlatformInfoReq) Reset() { *x = ListWorkPlatformInfoReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[137] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[137] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListWorkPlatformInfoReq) String() string { @@ -11738,7 +12175,7 @@ func (*ListWorkPlatformInfoReq) ProtoMessage() {} func (x *ListWorkPlatformInfoReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[137] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11783,32 +12220,35 @@ func (x *ListWorkPlatformInfoReq) GetPageSize() int32 { // 作品平台信息 type WorkPlatformInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID - MediaUserID string `protobuf:"bytes,3,opt,name=mediaUserID,proto3" json:"mediaUserID"` // 发布平台用户ID - PlatformID uint32 `protobuf:"varint,4,opt,name=platformID,proto3" json:"platformID"` // 平台ID - PublishResp string `protobuf:"bytes,5,opt,name=publishResp,proto3" json:"publishResp"` // 发布返回信息 - PublishMediaID string `protobuf:"bytes,6,opt,name=publishMediaID,proto3" json:"publishMediaID"` // 发布平台返回的作品ID - PublishMediaStatus int32 `protobuf:"varint,7,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` // 发布平台返回的作品状态 1 正常 2 异常 - Remark string `protobuf:"bytes,8,opt,name=remark,proto3" json:"remark"` // 备注 - CreatedAt int32 `protobuf:"varint,9,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,10,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - ArtistUuid string `protobuf:"bytes,11,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID + MediaUserID string `protobuf:"bytes,3,opt,name=mediaUserID,proto3" json:"mediaUserID"` // 发布平台用户ID + PlatformID uint32 `protobuf:"varint,4,opt,name=platformID,proto3" json:"platformID"` // 平台ID + PublishResp string `protobuf:"bytes,5,opt,name=publishResp,proto3" json:"publishResp"` // 发布返回信息 + PublishMediaID string `protobuf:"bytes,6,opt,name=publishMediaID,proto3" json:"publishMediaID"` // 发布平台返回的作品ID + PublishMediaStatus int32 `protobuf:"varint,7,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` // 发布平台返回的作品状态 1 正常 2 异常 + Remark string `protobuf:"bytes,8,opt,name=remark,proto3" json:"remark"` // 备注 + CreatedAt int32 `protobuf:"varint,9,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,10,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 + ArtistUuid string `protobuf:"bytes,11,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人UUID // 关联自媒体账号字段(通过artist_uuid关联cast_media_account表) PlatformUserName string `protobuf:"bytes,12,opt,name=platformUserName,proto3" json:"platformUserName"` // 平台用户名 PlatformUserID string `protobuf:"bytes,13,opt,name=platformUserID,proto3" json:"platformUserID"` // 平台用户ID ArtistName string `protobuf:"bytes,14,opt,name=artistName,proto3" json:"artistName"` // 自媒体账号艺人名字 ArtistPhone string `protobuf:"bytes,15,opt,name=artistPhone,proto3" json:"artistPhone"` // 自媒体账号艺人手机号 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache } func (x *WorkPlatformInfo) Reset() { *x = WorkPlatformInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[138] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[138] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkPlatformInfo) String() string { @@ -11819,7 +12259,7 @@ func (*WorkPlatformInfo) ProtoMessage() {} func (x *WorkPlatformInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[138] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11941,18 +12381,21 @@ func (x *WorkPlatformInfo) GetArtistPhone() string { // 获取作品平台信息列表响应 type ListWorkPlatformInfoResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*WorkPlatformInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 作品平台信息列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*WorkPlatformInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 作品平台信息列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *ListWorkPlatformInfoResp) Reset() { *x = ListWorkPlatformInfoResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[139] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[139] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListWorkPlatformInfoResp) String() string { @@ -11963,7 +12406,7 @@ func (*ListWorkPlatformInfoResp) ProtoMessage() {} func (x *ListWorkPlatformInfoResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[139] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -11994,21 +12437,24 @@ func (x *ListWorkPlatformInfoResp) GetCount() int64 { // 查询账号日级指标列表请求 type ListMediaMetricsDailyReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - IsSuccess uint32 `protobuf:"varint,1,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0表示不过滤,1表示成功,2表示失败 - FailType uint32 `protobuf:"varint,2,opt,name=failType,proto3" json:"failType"` // 失败类型 0表示不过滤,其他值表示具体的失败类型 - Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - Date int32 `protobuf:"varint,5,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) 0表示不过滤 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + IsSuccess uint32 `protobuf:"varint,1,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0表示不过滤,1表示成功,2表示失败 + FailType uint32 `protobuf:"varint,2,opt,name=failType,proto3" json:"failType"` // 失败类型 0表示不过滤,其他值表示具体的失败类型 + Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 + Date int32 `protobuf:"varint,5,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) 0表示不过滤 } func (x *ListMediaMetricsDailyReq) Reset() { *x = ListMediaMetricsDailyReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[140] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[140] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListMediaMetricsDailyReq) String() string { @@ -12019,7 +12465,7 @@ func (*ListMediaMetricsDailyReq) ProtoMessage() {} func (x *ListMediaMetricsDailyReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[140] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -12071,37 +12517,40 @@ func (x *ListMediaMetricsDailyReq) GetDate() int32 { // 账号日级指标信息 type MediaMetricsDailyInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - MediaAccUserID string `protobuf:"bytes,3,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID - MediaName string `protobuf:"bytes,4,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 - ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - PlatformID uint32 `protobuf:"varint,7,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion - Date int32 `protobuf:"varint,8,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) - FansCount int64 `protobuf:"varint,9,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 - ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 - LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 - ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图片数 - ProfileKey string `protobuf:"bytes,16,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key - IsSuccess uint32 `protobuf:"varint,17,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 - FailReason string `protobuf:"bytes,18,opt,name=failReason,proto3" json:"failReason"` // 失败原因 - FailType uint32 `protobuf:"varint,19,opt,name=failType,proto3" json:"failType"` // 失败类型 - CreatedAt int32 `protobuf:"varint,20,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,21,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + ArtistUuid string `protobuf:"bytes,2,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + MediaAccUserID string `protobuf:"bytes,3,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID + MediaName string `protobuf:"bytes,4,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 + ArtistName string `protobuf:"bytes,5,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistPhone string `protobuf:"bytes,6,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + PlatformID uint32 `protobuf:"varint,7,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion + Date int32 `protobuf:"varint,8,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) + FansCount int64 `protobuf:"varint,9,opt,name=fansCount,proto3" json:"fansCount"` // 粉丝数 + ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + VideoCount int64 `protobuf:"varint,14,opt,name=videoCount,proto3" json:"videoCount"` // 视频数 + ImageCount int64 `protobuf:"varint,15,opt,name=imageCount,proto3" json:"imageCount"` // 图片数 + ProfileKey string `protobuf:"bytes,16,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key + IsSuccess uint32 `protobuf:"varint,17,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 + FailReason string `protobuf:"bytes,18,opt,name=failReason,proto3" json:"failReason"` // 失败原因 + FailType uint32 `protobuf:"varint,19,opt,name=failType,proto3" json:"failType"` // 失败类型 + CreatedAt int32 `protobuf:"varint,20,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,21,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *MediaMetricsDailyInfo) Reset() { *x = MediaMetricsDailyInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[141] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[141] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaMetricsDailyInfo) String() string { @@ -12112,7 +12561,7 @@ func (*MediaMetricsDailyInfo) ProtoMessage() {} func (x *MediaMetricsDailyInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[141] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -12276,18 +12725,21 @@ func (x *MediaMetricsDailyInfo) GetUpdatedAt() int32 { // 查询账号日级指标列表响应 type ListMediaMetricsDailyResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*MediaMetricsDailyInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 账号日级指标列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*MediaMetricsDailyInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 账号日级指标列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *ListMediaMetricsDailyResp) Reset() { *x = ListMediaMetricsDailyResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[142] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[142] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListMediaMetricsDailyResp) String() string { @@ -12298,7 +12750,7 @@ func (*ListMediaMetricsDailyResp) ProtoMessage() {} func (x *ListMediaMetricsDailyResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[142] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -12329,21 +12781,24 @@ func (x *ListMediaMetricsDailyResp) GetCount() int64 { // 查询作品日级指标列表请求 type ListWorkMetricsDailyReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - IsSuccess uint32 `protobuf:"varint,1,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0表示不过滤,1表示成功,2表示失败 - FailType uint32 `protobuf:"varint,2,opt,name=failType,proto3" json:"failType"` // 失败类型 0表示不过滤,其他值表示具体的失败类型 - Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - Date int32 `protobuf:"varint,5,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) 0表示不过滤 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + IsSuccess uint32 `protobuf:"varint,1,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0表示不过滤,1表示成功,2表示失败 + FailType uint32 `protobuf:"varint,2,opt,name=failType,proto3" json:"failType"` // 失败类型 0表示不过滤,其他值表示具体的失败类型 + Page int32 `protobuf:"varint,3,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,4,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 + Date int32 `protobuf:"varint,5,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) 0表示不过滤 } func (x *ListWorkMetricsDailyReq) Reset() { *x = ListWorkMetricsDailyReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[143] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[143] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListWorkMetricsDailyReq) String() string { @@ -12354,7 +12809,7 @@ func (*ListWorkMetricsDailyReq) ProtoMessage() {} func (x *ListWorkMetricsDailyReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[143] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -12406,36 +12861,39 @@ func (x *ListWorkMetricsDailyReq) GetDate() int32 { // 作品日级指标信息 type WorkMetricsDailyInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID - WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID - ArtistUuid string `protobuf:"bytes,3,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID - MediaAccUserID string `protobuf:"bytes,4,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID - MediaName string `protobuf:"bytes,5,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 - ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 - ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 - PlatformID uint32 `protobuf:"varint,8,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion - Date int32 `protobuf:"varint,9,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) - ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 - LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 - CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 - SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 - PublishMediaID string `protobuf:"bytes,14,opt,name=publishMediaID,proto3" json:"publishMediaID"` // 发布媒体ID - ProfileKey string `protobuf:"bytes,15,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key - IsSuccess uint32 `protobuf:"varint,16,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 - FailReason string `protobuf:"bytes,17,opt,name=failReason,proto3" json:"failReason"` // 失败原因 - FailType uint32 `protobuf:"varint,18,opt,name=failType,proto3" json:"failType"` // 失败类型 - CreatedAt int32 `protobuf:"varint,19,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt int32 `protobuf:"varint,20,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // UUID + WorkUuid string `protobuf:"bytes,2,opt,name=workUuid,proto3" json:"workUuid"` // 作品UUID + ArtistUuid string `protobuf:"bytes,3,opt,name=artistUuid,proto3" json:"artistUuid"` // 艺人ID + MediaAccUserID string `protobuf:"bytes,4,opt,name=mediaAccUserID,proto3" json:"mediaAccUserID"` // 自媒体账号UserID + MediaName string `protobuf:"bytes,5,opt,name=mediaName,proto3" json:"mediaName"` // 自媒体账号名称 + ArtistName string `protobuf:"bytes,6,opt,name=artistName,proto3" json:"artistName"` // 艺人名字 + ArtistPhone string `protobuf:"bytes,7,opt,name=artistPhone,proto3" json:"artistPhone"` // 艺人手机号 + PlatformID uint32 `protobuf:"varint,8,opt,name=platformID,proto3" json:"platformID"` // 平台ID 1 TikTok 2 YouTube 3 Instagram 4 Dailymotion + Date int32 `protobuf:"varint,9,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) + ViewsCount int64 `protobuf:"varint,10,opt,name=viewsCount,proto3" json:"viewsCount"` // 浏览/播放数 + LikesCount int64 `protobuf:"varint,11,opt,name=likesCount,proto3" json:"likesCount"` // 点赞数 + CommentsCount int64 `protobuf:"varint,12,opt,name=commentsCount,proto3" json:"commentsCount"` // 评论数 + SharesCount int64 `protobuf:"varint,13,opt,name=sharesCount,proto3" json:"sharesCount"` // 分享数 + PublishMediaID string `protobuf:"bytes,14,opt,name=publishMediaID,proto3" json:"publishMediaID"` // 发布媒体ID + ProfileKey string `protobuf:"bytes,15,opt,name=profileKey,proto3" json:"profileKey"` // AyrShare配置文件Key + IsSuccess uint32 `protobuf:"varint,16,opt,name=isSuccess,proto3" json:"isSuccess"` // 是否成功 0 失败 1 成功 2 失败 + FailReason string `protobuf:"bytes,17,opt,name=failReason,proto3" json:"failReason"` // 失败原因 + FailType uint32 `protobuf:"varint,18,opt,name=failType,proto3" json:"failType"` // 失败类型 + CreatedAt int32 `protobuf:"varint,19,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt int32 `protobuf:"varint,20,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *WorkMetricsDailyInfo) Reset() { *x = WorkMetricsDailyInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[144] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[144] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkMetricsDailyInfo) String() string { @@ -12446,7 +12904,7 @@ func (*WorkMetricsDailyInfo) ProtoMessage() {} func (x *WorkMetricsDailyInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[144] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -12603,18 +13061,21 @@ func (x *WorkMetricsDailyInfo) GetUpdatedAt() int32 { // 查询作品日级指标列表响应 type ListWorkMetricsDailyResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*WorkMetricsDailyInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 作品日级指标列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*WorkMetricsDailyInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 作品日级指标列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 } func (x *ListWorkMetricsDailyResp) Reset() { *x = ListWorkMetricsDailyResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[145] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[145] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListWorkMetricsDailyResp) String() string { @@ -12625,7 +13086,7 @@ func (*ListWorkMetricsDailyResp) ProtoMessage() {} func (x *ListWorkMetricsDailyResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[145] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -12656,22 +13117,25 @@ func (x *ListWorkMetricsDailyResp) GetCount() int64 { // 新增或更新任务请求(通过uuid判断是新增还是更新) type UpsertTaskListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID,为空则新增,不为空则更新 - Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action"` // 任务类型 - Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url"` // 任务链接 - Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态:1-待处理 2-处理中 3-处理完成 - OperatorID string `protobuf:"bytes,5,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID - OperatorName string `protobuf:"bytes,6,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID,为空则新增,不为空则更新 + Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action"` // 任务类型 + Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url"` // 任务链接 + Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态:1-待处理 2-处理中 3-处理完成 + OperatorID string `protobuf:"bytes,5,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID + OperatorName string `protobuf:"bytes,6,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 } func (x *UpsertTaskListReq) Reset() { *x = UpsertTaskListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[146] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[146] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpsertTaskListReq) String() string { @@ -12682,7 +13146,7 @@ func (*UpsertTaskListReq) ProtoMessage() {} func (x *UpsertTaskListReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[146] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -12741,18 +13205,21 @@ func (x *UpsertTaskListReq) GetOperatorName() string { // 新增或更新任务响应 type UpsertTaskListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID - Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg"` // 提示信息 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID + Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg"` // 提示信息 } func (x *UpsertTaskListResp) Reset() { *x = UpsertTaskListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[147] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[147] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpsertTaskListResp) String() string { @@ -12763,7 +13230,7 @@ func (*UpsertTaskListResp) ProtoMessage() {} func (x *UpsertTaskListResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[147] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -12794,17 +13261,20 @@ func (x *UpsertTaskListResp) GetMsg() string { // 获取任务详情请求 type GetTaskListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID } func (x *GetTaskListReq) Reset() { *x = GetTaskListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[148] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[148] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetTaskListReq) String() string { @@ -12815,7 +13285,7 @@ func (*GetTaskListReq) ProtoMessage() {} func (x *GetTaskListReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[148] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -12839,24 +13309,27 @@ func (x *GetTaskListReq) GetUuid() string { // 任务信息 type TaskListInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID - Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action"` // 任务类型 - Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url"` // 任务链接 - Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态:1-待处理 2-处理中 3-处理完成 - OperatorID string `protobuf:"bytes,5,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID - OperatorName string `protobuf:"bytes,6,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 - CreatedAt string `protobuf:"bytes,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 - UpdatedAt string `protobuf:"bytes,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID + Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action"` // 任务类型 + Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url"` // 任务链接 + Status uint32 `protobuf:"varint,4,opt,name=status,proto3" json:"status"` // 状态:1-待处理 2-处理中 3-处理完成 + OperatorID string `protobuf:"bytes,5,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID + OperatorName string `protobuf:"bytes,6,opt,name=operatorName,proto3" json:"operatorName"` // 操作人名称 + CreatedAt string `protobuf:"bytes,7,opt,name=createdAt,proto3" json:"createdAt"` // 创建时间 + UpdatedAt string `protobuf:"bytes,8,opt,name=updatedAt,proto3" json:"updatedAt"` // 更新时间 } func (x *TaskListInfo) Reset() { *x = TaskListInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[149] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[149] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *TaskListInfo) String() string { @@ -12867,7 +13340,7 @@ func (*TaskListInfo) ProtoMessage() {} func (x *TaskListInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[149] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -12940,18 +13413,21 @@ func (x *TaskListInfo) GetUpdatedAt() string { // 获取任务详情响应 type GetTaskListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data *TaskListInfo `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` // 任务信息 - Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg"` // 提示信息 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data *TaskListInfo `protobuf:"bytes,1,opt,name=data,proto3" json:"data"` // 任务信息 + Msg string `protobuf:"bytes,2,opt,name=msg,proto3" json:"msg"` // 提示信息 } func (x *GetTaskListResp) Reset() { *x = GetTaskListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[150] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[150] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *GetTaskListResp) String() string { @@ -12962,7 +13438,7 @@ func (*GetTaskListResp) ProtoMessage() {} func (x *GetTaskListResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[150] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -12993,21 +13469,24 @@ func (x *GetTaskListResp) GetMsg() string { // 查询任务列表请求 type ListTaskListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` // 任务类型(可选) - Status uint32 `protobuf:"varint,2,opt,name=status,proto3" json:"status"` // 状态(可选):1-待处理 2-处理中 3-处理完成 - OperatorID string `protobuf:"bytes,3,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID(可选) - Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"` // 页码 - PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` // 任务类型(可选) + Status uint32 `protobuf:"varint,2,opt,name=status,proto3" json:"status"` // 状态(可选):1-待处理 2-处理中 3-处理完成 + OperatorID string `protobuf:"bytes,3,opt,name=operatorID,proto3" json:"operatorID"` // 操作人ID(可选) + Page int32 `protobuf:"varint,4,opt,name=page,proto3" json:"page"` // 页码 + PageSize int32 `protobuf:"varint,5,opt,name=pageSize,proto3" json:"pageSize"` // 每页数量 } func (x *ListTaskListReq) Reset() { *x = ListTaskListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[151] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[151] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListTaskListReq) String() string { @@ -13018,7 +13497,7 @@ func (*ListTaskListReq) ProtoMessage() {} func (x *ListTaskListReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[151] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -13070,19 +13549,22 @@ func (x *ListTaskListReq) GetPageSize() int32 { // 查询任务列表响应 type ListTaskListResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Data []*TaskListInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 任务列表 - Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 - Msg string `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg"` // 提示信息 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Data []*TaskListInfo `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` // 任务列表 + Count int64 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` // 总数 + Msg string `protobuf:"bytes,3,opt,name=msg,proto3" json:"msg"` // 提示信息 } func (x *ListTaskListResp) Reset() { *x = ListTaskListResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[152] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[152] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *ListTaskListResp) String() string { @@ -13093,7 +13575,7 @@ func (*ListTaskListResp) ProtoMessage() {} func (x *ListTaskListResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[152] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -13131,17 +13613,20 @@ func (x *ListTaskListResp) GetMsg() string { // 删除任务请求 type DeleteTaskListReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Uuid string `protobuf:"bytes,1,opt,name=uuid,proto3" json:"uuid"` // 任务UUID } func (x *DeleteTaskListReq) Reset() { *x = DeleteTaskListReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[153] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[153] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *DeleteTaskListReq) String() string { @@ -13152,7 +13637,7 @@ func (*DeleteTaskListReq) ProtoMessage() {} func (x *DeleteTaskListReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[153] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -13176,17 +13661,20 @@ func (x *DeleteTaskListReq) GetUuid() string { // 根据作品数据计算并更新账号日级指标请求 type CalculateMediaMetricsByWorksReq struct { - state protoimpl.MessageState `protogen:"open.v1"` - Date int32 `protobuf:"varint,1,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Date int32 `protobuf:"varint,1,opt,name=date,proto3" json:"date"` // 统计日期(YYYYMMDD,UTC) } func (x *CalculateMediaMetricsByWorksReq) Reset() { *x = CalculateMediaMetricsByWorksReq{} - mi := &file_pb_fiee_cast_proto_msgTypes[154] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[154] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *CalculateMediaMetricsByWorksReq) String() string { @@ -13197,7 +13685,7 @@ func (*CalculateMediaMetricsByWorksReq) ProtoMessage() {} func (x *CalculateMediaMetricsByWorksReq) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[154] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -13221,17 +13709,20 @@ func (x *CalculateMediaMetricsByWorksReq) GetDate() int32 { // 根据作品数据计算并更新账号日级指标响应 type CalculateMediaMetricsByWorksResp struct { - state protoimpl.MessageState `protogen:"open.v1"` - Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success"` // 是否成功 - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Success bool `protobuf:"varint,1,opt,name=success,proto3" json:"success"` // 是否成功 } func (x *CalculateMediaMetricsByWorksResp) Reset() { *x = CalculateMediaMetricsByWorksResp{} - mi := &file_pb_fiee_cast_proto_msgTypes[155] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[155] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *CalculateMediaMetricsByWorksResp) String() string { @@ -13242,7 +13733,7 @@ func (*CalculateMediaMetricsByWorksResp) ProtoMessage() {} func (x *CalculateMediaMetricsByWorksResp) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[155] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -13265,46 +13756,49 @@ func (x *CalculateMediaMetricsByWorksResp) GetSuccess() bool { } type WorkListResp_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - ArtistName string `protobuf:"bytes,2,opt,name=artistName,proto3" json:"artistName"` - ArtistPhone string `protobuf:"bytes,3,opt,name=artistPhone,proto3" json:"artistPhone"` - Title string `protobuf:"bytes,4,opt,name=title,proto3" json:"title"` - WorkCategory uint32 `protobuf:"varint,5,opt,name=workCategory,proto3" json:"workCategory"` - WorkStatus uint32 `protobuf:"varint,6,opt,name=workStatus,proto3" json:"workStatus"` - SubmitTime string `protobuf:"bytes,7,opt,name=submitTime,proto3" json:"submitTime"` - StatusUpdateTime string `protobuf:"bytes,8,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` - PlatformIDs []uint32 `protobuf:"varint,9,rep,packed,name=platformIDs,proto3" json:"platformIDs"` - MediaAccountNames []string `protobuf:"bytes,10,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` - MediaAccountUuids []string `protobuf:"bytes,11,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` - ManagerUserNames []string `protobuf:"bytes,12,rep,name=managerUserNames,proto3" json:"managerUserNames"` - ManagerUuids []string `protobuf:"bytes,13,rep,name=managerUuids,proto3" json:"managerUuids"` - ApprovalID string `protobuf:"bytes,14,opt,name=approvalID,proto3" json:"approvalID"` - CostType uint32 `protobuf:"varint,15,opt,name=costType,proto3" json:"costType"` - ScriptUuid string `protobuf:"bytes,16,opt,name=scriptUuid,proto3" json:"scriptUuid"` - ScriptTitle string `protobuf:"bytes,17,opt,name=scriptTitle,proto3" json:"scriptTitle"` - ArtistSubNum string `protobuf:"bytes,18,opt,name=artistSubNum,proto3" json:"artistSubNum"` - TiktokStatus uint32 `protobuf:"varint,19,opt,name=tiktokStatus,proto3" json:"tiktokStatus"` - InsStatus uint32 `protobuf:"varint,20,opt,name=insStatus,proto3" json:"insStatus"` - DmStatus uint32 `protobuf:"varint,21,opt,name=dmStatus,proto3" json:"dmStatus"` - ConfirmType uint32 `protobuf:"varint,22,opt,name=confirmType,proto3" json:"confirmType"` - Remark string `protobuf:"bytes,23,opt,name=remark,proto3" json:"remark"` - Status1Time string `protobuf:"bytes,24,opt,name=status1Time,proto3" json:"status1Time"` - Status4Time string `protobuf:"bytes,25,opt,name=status4Time,proto3" json:"status4Time"` - Status9Time string `protobuf:"bytes,26,opt,name=status9Time,proto3" json:"status9Time"` - Status6Time string `protobuf:"bytes,27,opt,name=status6Time,proto3" json:"status6Time"` - PublishMediaIDs map[string]string `protobuf:"bytes,28,rep,name=PublishMediaIDs,proto3" json:"PublishMediaIDs" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"` - YoutubeStatus uint32 `protobuf:"varint,29,opt,name=youtubeStatus,proto3" json:"youtubeStatus"` - BlueskyStatus uint32 `protobuf:"varint,30,opt,name=blueskyStatus,proto3" json:"blueskyStatus"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + ArtistName string `protobuf:"bytes,2,opt,name=artistName,proto3" json:"artistName"` + ArtistPhone string `protobuf:"bytes,3,opt,name=artistPhone,proto3" json:"artistPhone"` + Title string `protobuf:"bytes,4,opt,name=title,proto3" json:"title"` + WorkCategory uint32 `protobuf:"varint,5,opt,name=workCategory,proto3" json:"workCategory"` + WorkStatus uint32 `protobuf:"varint,6,opt,name=workStatus,proto3" json:"workStatus"` + SubmitTime string `protobuf:"bytes,7,opt,name=submitTime,proto3" json:"submitTime"` + StatusUpdateTime string `protobuf:"bytes,8,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` + PlatformIDs []uint32 `protobuf:"varint,9,rep,packed,name=platformIDs,proto3" json:"platformIDs"` + MediaAccountNames []string `protobuf:"bytes,10,rep,name=mediaAccountNames,proto3" json:"mediaAccountNames"` + MediaAccountUuids []string `protobuf:"bytes,11,rep,name=mediaAccountUuids,proto3" json:"mediaAccountUuids"` + ManagerUserNames []string `protobuf:"bytes,12,rep,name=managerUserNames,proto3" json:"managerUserNames"` + ManagerUuids []string `protobuf:"bytes,13,rep,name=managerUuids,proto3" json:"managerUuids"` + ApprovalID string `protobuf:"bytes,14,opt,name=approvalID,proto3" json:"approvalID"` + CostType uint32 `protobuf:"varint,15,opt,name=costType,proto3" json:"costType"` + ScriptUuid string `protobuf:"bytes,16,opt,name=scriptUuid,proto3" json:"scriptUuid"` + ScriptTitle string `protobuf:"bytes,17,opt,name=scriptTitle,proto3" json:"scriptTitle"` + ArtistSubNum string `protobuf:"bytes,18,opt,name=artistSubNum,proto3" json:"artistSubNum"` + TiktokStatus uint32 `protobuf:"varint,19,opt,name=tiktokStatus,proto3" json:"tiktokStatus"` + InsStatus uint32 `protobuf:"varint,20,opt,name=insStatus,proto3" json:"insStatus"` + DmStatus uint32 `protobuf:"varint,21,opt,name=dmStatus,proto3" json:"dmStatus"` + ConfirmType uint32 `protobuf:"varint,22,opt,name=confirmType,proto3" json:"confirmType"` + Remark string `protobuf:"bytes,23,opt,name=remark,proto3" json:"remark"` + Status1Time string `protobuf:"bytes,24,opt,name=status1Time,proto3" json:"status1Time"` + Status4Time string `protobuf:"bytes,25,opt,name=status4Time,proto3" json:"status4Time"` + Status9Time string `protobuf:"bytes,26,opt,name=status9Time,proto3" json:"status9Time"` + Status6Time string `protobuf:"bytes,27,opt,name=status6Time,proto3" json:"status6Time"` + PublishMediaIDs map[string]string `protobuf:"bytes,28,rep,name=PublishMediaIDs,proto3" json:"PublishMediaIDs" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + YoutubeStatus uint32 `protobuf:"varint,29,opt,name=youtubeStatus,proto3" json:"youtubeStatus"` + BlueskyStatus uint32 `protobuf:"varint,30,opt,name=blueskyStatus,proto3" json:"blueskyStatus"` } func (x *WorkListResp_Info) Reset() { *x = WorkListResp_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[156] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[156] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *WorkListResp_Info) String() string { @@ -13315,7 +13809,7 @@ func (*WorkListResp_Info) ProtoMessage() {} func (x *WorkListResp_Info) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[156] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -13541,22 +14035,25 @@ func (x *WorkListResp_Info) GetBlueskyStatus() uint32 { } type MediaAccountsResp_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` - PlatformID uint32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` - FansCount uint32 `protobuf:"varint,2,opt,name=fansCount,proto3" json:"fansCount"` - WorkCount uint32 `protobuf:"varint,3,opt,name=workCount,proto3" json:"workCount"` - ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` - MediaAccountUuid string `protobuf:"bytes,5,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` - MediaAccountName string `protobuf:"bytes,6,opt,name=mediaAccountName,proto3" json:"mediaAccountName"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PlatformID uint32 `protobuf:"varint,1,opt,name=platformID,proto3" json:"platformID"` + FansCount uint32 `protobuf:"varint,2,opt,name=fansCount,proto3" json:"fansCount"` + WorkCount uint32 `protobuf:"varint,3,opt,name=workCount,proto3" json:"workCount"` + ArtistUuid string `protobuf:"bytes,4,opt,name=artistUuid,proto3" json:"artistUuid"` + MediaAccountUuid string `protobuf:"bytes,5,opt,name=mediaAccountUuid,proto3" json:"mediaAccountUuid"` + MediaAccountName string `protobuf:"bytes,6,opt,name=mediaAccountName,proto3" json:"mediaAccountName"` } func (x *MediaAccountsResp_Info) Reset() { *x = MediaAccountsResp_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[159] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[159] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaAccountsResp_Info) String() string { @@ -13567,7 +14064,7 @@ func (*MediaAccountsResp_Info) ProtoMessage() {} func (x *MediaAccountsResp_Info) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[159] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -13625,26 +14122,29 @@ func (x *MediaAccountsResp_Info) GetMediaAccountName() string { } type MediaWorksResp_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` - WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` - Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` - WorkCategory uint32 `protobuf:"varint,4,opt,name=workCategory,proto3" json:"workCategory"` - WorkStatus uint32 `protobuf:"varint,5,opt,name=workStatus,proto3" json:"workStatus"` - SubmitTime string `protobuf:"bytes,6,opt,name=submitTime,proto3" json:"submitTime"` - StatusUpdateTime string `protobuf:"bytes,7,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` - Images []string `protobuf:"bytes,8,rep,name=images,proto3" json:"images"` - VideoUrl string `protobuf:"bytes,9,opt,name=videoUrl,proto3" json:"videoUrl"` - CoverUrl string `protobuf:"bytes,10,opt,name=coverUrl,proto3" json:"coverUrl"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` + Content string `protobuf:"bytes,3,opt,name=content,proto3" json:"content"` + WorkCategory uint32 `protobuf:"varint,4,opt,name=workCategory,proto3" json:"workCategory"` + WorkStatus uint32 `protobuf:"varint,5,opt,name=workStatus,proto3" json:"workStatus"` + SubmitTime string `protobuf:"bytes,6,opt,name=submitTime,proto3" json:"submitTime"` + StatusUpdateTime string `protobuf:"bytes,7,opt,name=statusUpdateTime,proto3" json:"statusUpdateTime"` + Images []string `protobuf:"bytes,8,rep,name=images,proto3" json:"images"` + VideoUrl string `protobuf:"bytes,9,opt,name=videoUrl,proto3" json:"videoUrl"` + CoverUrl string `protobuf:"bytes,10,opt,name=coverUrl,proto3" json:"coverUrl"` } func (x *MediaWorksResp_Info) Reset() { *x = MediaWorksResp_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[160] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[160] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *MediaWorksResp_Info) String() string { @@ -13655,7 +14155,7 @@ func (*MediaWorksResp_Info) ProtoMessage() {} func (x *MediaWorksResp_Info) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[160] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -13741,18 +14241,21 @@ func (x *MediaWorksResp_Info) GetCoverUrl() string { } type PublishResp_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - WorkCategory int32 `protobuf:"varint,2,opt,name=workCategory,proto3" json:"workCategory"` - unknownFields protoimpl.UnknownFields + state protoimpl.MessageState sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + WorkCategory int32 `protobuf:"varint,2,opt,name=workCategory,proto3" json:"workCategory"` } func (x *PublishResp_Info) Reset() { *x = PublishResp_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[161] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[161] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *PublishResp_Info) String() string { @@ -13763,7 +14266,7 @@ func (*PublishResp_Info) ProtoMessage() {} func (x *PublishResp_Info) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[161] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -13793,19 +14296,22 @@ func (x *PublishResp_Info) GetWorkCategory() int32 { } type RefreshWorkListResp_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + WorkUuid string `protobuf:"bytes,1,opt,name=workUuid,proto3" json:"workUuid"` PlatformInfoData []*RefreshWorkListResp_Info_PlatformInfo `protobuf:"bytes,2,rep,name=PlatformInfoData,proto3" json:"PlatformInfoData"` ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache } func (x *RefreshWorkListResp_Info) Reset() { *x = RefreshWorkListResp_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[162] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[162] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshWorkListResp_Info) String() string { @@ -13816,7 +14322,7 @@ func (*RefreshWorkListResp_Info) ProtoMessage() {} func (x *RefreshWorkListResp_Info) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[162] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -13853,22 +14359,25 @@ func (x *RefreshWorkListResp_Info) GetProfileKey() string { } type RefreshWorkListResp_Info_PlatformInfo struct { - state protoimpl.MessageState `protogen:"open.v1"` - PublishMediaID string `protobuf:"bytes,1,opt,name=publishMediaID,proto3" json:"publishMediaID"` - PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - PublishMediaStatus uint32 `protobuf:"varint,3,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` - MediaUserID string `protobuf:"bytes,4,opt,name=mediaUserID,proto3" json:"mediaUserID"` - PlatformUuid string `protobuf:"bytes,5,opt,name=platformUuid,proto3" json:"platformUuid"` - Token string `protobuf:"bytes,6,opt,name=token,proto3" json:"token"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + PublishMediaID string `protobuf:"bytes,1,opt,name=publishMediaID,proto3" json:"publishMediaID"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + PublishMediaStatus uint32 `protobuf:"varint,3,opt,name=publishMediaStatus,proto3" json:"publishMediaStatus"` + MediaUserID string `protobuf:"bytes,4,opt,name=mediaUserID,proto3" json:"mediaUserID"` + PlatformUuid string `protobuf:"bytes,5,opt,name=platformUuid,proto3" json:"platformUuid"` + Token string `protobuf:"bytes,6,opt,name=token,proto3" json:"token"` } func (x *RefreshWorkListResp_Info_PlatformInfo) Reset() { *x = RefreshWorkListResp_Info_PlatformInfo{} - mi := &file_pb_fiee_cast_proto_msgTypes[163] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[163] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *RefreshWorkListResp_Info_PlatformInfo) String() string { @@ -13879,7 +14388,7 @@ func (*RefreshWorkListResp_Info_PlatformInfo) ProtoMessage() {} func (x *RefreshWorkListResp_Info_PlatformInfo) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[163] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -13937,21 +14446,24 @@ func (x *RefreshWorkListResp_Info_PlatformInfo) GetToken() string { } type UpdateOAuthReq_Info struct { - state protoimpl.MessageState `protogen:"open.v1"` - ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` - PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` - AsID string `protobuf:"bytes,3,opt,name=asID,proto3" json:"asID"` - PlatformUserName string `protobuf:"bytes,4,opt,name=platformUserName,proto3" json:"platformUserName"` - AutInfo string `protobuf:"bytes,5,opt,name=autInfo,proto3" json:"autInfo"` - unknownFields protoimpl.UnknownFields - sizeCache protoimpl.SizeCache + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtistUuid string `protobuf:"bytes,1,opt,name=artistUuid,proto3" json:"artistUuid"` + PlatformID PlatformIDENUM `protobuf:"varint,2,opt,name=platformID,proto3,enum=Cast.PlatformIDENUM" json:"platformID"` + AsID string `protobuf:"bytes,3,opt,name=asID,proto3" json:"asID"` + PlatformUserName string `protobuf:"bytes,4,opt,name=platformUserName,proto3" json:"platformUserName"` + AutInfo string `protobuf:"bytes,5,opt,name=autInfo,proto3" json:"autInfo"` } func (x *UpdateOAuthReq_Info) Reset() { *x = UpdateOAuthReq_Info{} - mi := &file_pb_fiee_cast_proto_msgTypes[164] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) + if protoimpl.UnsafeEnabled { + mi := &file_pb_fiee_cast_proto_msgTypes[164] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } } func (x *UpdateOAuthReq_Info) String() string { @@ -13962,7 +14474,7 @@ func (*UpdateOAuthReq_Info) ProtoMessage() {} func (x *UpdateOAuthReq_Info) ProtoReflect() protoreflect.Message { mi := &file_pb_fiee_cast_proto_msgTypes[164] - if x != nil { + if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -14014,1728 +14526,2707 @@ func (x *UpdateOAuthReq_Info) GetAutInfo() string { var File_pb_fiee_cast_proto protoreflect.FileDescriptor -const file_pb_fiee_cast_proto_rawDesc = "" + - "\n" + - "\x12pb/fiee/cast.proto\x12\x04Cast\x1a\x15common/wrappers.proto\x1a\x17common/descriptor.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x15common/validate.proto\"<\n" + - "\x06AsInfo\x12\x1e\n" + - "\n" + - "profileKey\x18\x01 \x01(\tR\n" + - "profileKey\x12\x12\n" + - "\x04AsID\x18\x02 \x01(\tR\x04AsID\"\xe8\x03\n" + - "\x10MediaUserListReq\x12\x1c\n" + - "\tartistVal\x18\x01 \x01(\tR\tartistVal\x12\x1e\n" + - "\n" + - "managerVal\x18\x02 \x01(\tR\n" + - "managerVal\x12*\n" + - "\x10platformUserName\x18\x03 \x01(\tR\x10platformUserName\x124\n" + - "\n" + - "platformID\x18\x04 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12\x12\n" + - "\x04page\x18\x05 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x06 \x01(\x05R\bpageSize\x12\x1e\n" + - "\n" + - "artistUuid\x18\a \x01(\tR\n" + - "artistUuid\x12(\n" + - "\x0fcreateStartDate\x18\b \x01(\tR\x0fcreateStartDate\x12$\n" + - "\rcreateEndDate\x18\t \x01(\tR\rcreateEndDate\x124\n" + - "\n" + - "authStatus\x18\n" + - " \x01(\x0e2\x14.Cast.AuthStatusENUMR\n" + - "authStatus\x12 \n" + - "\vmediaUserID\x18\v \x01(\tR\vmediaUserID\x12\x1c\n" + - "\tneedStats\x18\f \x01(\bR\tneedStats\x12\x1e\n" + - "\n" + - "needAsInfo\x18\r \x01(\bR\n" + - "needAsInfo\"\xc9\x05\n" + - "\rMediaUserInfo\x12*\n" + - "\x10platformUserName\x18\x01 \x01(\tR\x10platformUserName\x12\x1e\n" + - "\n" + - "platformID\x18\x02 \x01(\rR\n" + - "platformID\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x04 \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "artistUuid\x18\x05 \x01(\tR\n" + - "artistUuid\x12(\n" + - "\x0fmanagerUserName\x18\x06 \x01(\tR\x0fmanagerUserName\x12 \n" + - "\vmanagerUuid\x18\a \x01(\tR\vmanagerUuid\x12*\n" + - "\x10mediaAccountUuid\x18\b \x01(\tR\x10mediaAccountUuid\x12 \n" + - "\vcreatedDate\x18\t \x01(\tR\vcreatedDate\x124\n" + - "\n" + - "authStatus\x18\n" + - " \x01(\x0e2\x14.Cast.AuthStatusENUMR\n" + - "authStatus\x12,\n" + - "\x11pendingVideoCount\x18\v \x01(\x05R\x11pendingVideoCount\x12.\n" + - "\x12uploadedVideoCount\x18\f \x01(\x05R\x12uploadedVideoCount\x12.\n" + - "\x12releasedVideoTotal\x18\r \x01(\x05R\x12releasedVideoTotal\x12*\n" + - "\x10pendingPostCount\x18\x0e \x01(\x05R\x10pendingPostCount\x12,\n" + - "\x11uploadedPostCount\x18\x0f \x01(\x05R\x11uploadedPostCount\x12,\n" + - "\x11releasedPostTotal\x18\x10 \x01(\x05R\x11releasedPostTotal\x12$\n" + - "\x06asInfo\x18\x11 \x01(\v2\f.Cast.AsInfoR\x06asInfo\"R\n" + - "\x11MediaUserListResp\x12'\n" + - "\x04data\x18\x01 \x03(\v2\x13.Cast.MediaUserInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"\xd1\x03\n" + - "\x15UpdateMediaAccountReq\x124\n" + - "\n" + - "platformID\x18\x01 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12*\n" + - "\x10platformUserName\x18\x02 \x01(\tR\x10platformUserName\x12&\n" + - "\x0eplatformUserID\x18\x03 \x01(\tR\x0eplatformUserID\x12\x1e\n" + - "\n" + - "artistUuid\x18\x04 \x01(\tR\n" + - "artistUuid\x12\x1e\n" + - "\n" + - "artistName\x18\x05 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x06 \x01(\tR\vartistPhone\x12*\n" + - "\x10mediaAccountUuid\x18\a \x01(\tR\x10mediaAccountUuid\x12 \n" + - "\vmanagerUuid\x18\b \x01(\tR\vmanagerUuid\x12(\n" + - "\x0fmanagerUserName\x18\t \x01(\tR\x0fmanagerUserName\x120\n" + - "\x13artistPhoneAreaCode\x18\n" + - " \x01(\tR\x13artistPhoneAreaCode\x12\"\n" + - "\fartistSubNum\x18\v \x01(\tR\fartistSubNum\"D\n" + - "\x16UpdateMediaAccountResp\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\">\n" + - "\x10UnbindManagerReq\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\"A\n" + - "\x11UnbindManagerResp\x12,\n" + - "\x11oldBindArtistUuid\x18\x01 \x01(\tR\x11oldBindArtistUuid\"\x88\x01\n" + - "\x0eBindManagerReq\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\x12 \n" + - "\vmanagerUuid\x18\x02 \x01(\tR\vmanagerUuid\x12(\n" + - "\x0fmanagerUserName\x18\x03 \x01(\tR\x0fmanagerUserName\"\xb1\a\n" + - "\x12UpdateWorkImageReq\x12\x14\n" + - "\x05title\x18\x01 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x02 \x01(\tR\acontent\x12\x16\n" + - "\x06images\x18\x03 \x03(\tR\x06images\x12,\n" + - "\x11mediaAccountUuids\x18\x04 \x03(\tR\x11mediaAccountUuids\x12,\n" + - "\x11mediaAccountNames\x18\x05 \x03(\tR\x11mediaAccountNames\x126\n" + - "\vplatformIDs\x18\x06 \x03(\x0e2\x14.Cast.PlatformIDENUMR\vplatformIDs\x12;\n" + - "\x0epublishConfig1\x18\a \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig1\x12;\n" + - "\x0epublishConfig2\x18\b \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig2\x12;\n" + - "\x0epublishConfig3\x18\t \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig3\x12;\n" + - "\x0epublishConfig4\x18\n" + - " \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig4\x12\x16\n" + - "\x06action\x18\v \x01(\tR\x06action\x12\x1a\n" + - "\bworkUuid\x18\f \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\r \x01(\tR\n" + - "artistUuid\x12 \n" + - "\vartistPhone\x18\x0e \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "artistName\x18\x0f \x01(\tR\n" + - "artistName\x120\n" + - "\x13artistPhoneAreaCode\x18\x10 \x01(\tR\x13artistPhoneAreaCode\x12\x16\n" + - "\x06source\x18\x11 \x01(\rR\x06source\x12\x16\n" + - "\x06lineNo\x18\x12 \x01(\rR\x06lineNo\x12\x16\n" + - "\x06remark\x18\x13 \x01(\tR\x06remark\x12\x18\n" + - "\asuccess\x18\x14 \x01(\bR\asuccess\x12\"\n" + - "\fartistSubNum\x18\x15 \x01(\tR\fartistSubNum\x12\x1e\n" + - "\n" + - "scriptUuid\x18\x16 \x01(\tR\n" + - "scriptUuid\x12 \n" + - "\vpromptUuids\x18\x17 \x03(\tR\vpromptUuids\x12;\n" + - "\x0epublishConfig5\x18\x18 \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig5\"1\n" + - "\x13UpdateWorkImageResp\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\"\xbf\x01\n" + - "\rPublishConfig\x12$\n" + - "\rforbidComment\x18\x01 \x01(\rR\rforbidComment\x12\x1e\n" + - "\n" + - "publicType\x18\x02 \x01(\rR\n" + - "publicType\x12\x18\n" + - "\acanJoin\x18\x03 \x01(\rR\acanJoin\x12\x1a\n" + - "\bcanQuote\x18\x04 \x01(\rR\bcanQuote\x12\x1e\n" + - "\n" + - "canComment\x18\x05 \x01(\rR\n" + - "canComment\x12\x12\n" + - "\x04isAI\x18\x06 \x01(\rR\x04isAI\"\xca\a\n" + - "\x12UpdateWorkVideoReq\x12\x14\n" + - "\x05title\x18\x01 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x02 \x01(\tR\acontent\x12\x1a\n" + - "\bvideoUrl\x18\x03 \x01(\tR\bvideoUrl\x12\x1a\n" + - "\bcoverUrl\x18\x04 \x01(\tR\bcoverUrl\x12,\n" + - "\x11mediaAccountUuids\x18\x05 \x03(\tR\x11mediaAccountUuids\x12,\n" + - "\x11mediaAccountNames\x18\x06 \x03(\tR\x11mediaAccountNames\x126\n" + - "\vplatformIDs\x18\a \x03(\x0e2\x14.Cast.PlatformIDENUMR\vplatformIDs\x12;\n" + - "\x0epublishConfig1\x18\b \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig1\x12;\n" + - "\x0epublishConfig2\x18\t \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig2\x12;\n" + - "\x0epublishConfig3\x18\n" + - " \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig3\x12;\n" + - "\x0epublishConfig4\x18\v \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig4\x12\x16\n" + - "\x06action\x18\f \x01(\tR\x06action\x12\x1a\n" + - "\bworkUuid\x18\r \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x0e \x01(\tR\n" + - "artistUuid\x12 \n" + - "\vartistPhone\x18\x0f \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "artistName\x18\x10 \x01(\tR\n" + - "artistName\x120\n" + - "\x13artistPhoneAreaCode\x18\x11 \x01(\tR\x13artistPhoneAreaCode\x12\x16\n" + - "\x06source\x18\x12 \x01(\rR\x06source\x12*\n" + - "\x10coverTimestampMs\x18\x13 \x01(\x04R\x10coverTimestampMs\x127\n" + - "\vautoPublish\x18\x14 \x01(\x0e2\x15.Cast.AutoPublishENUMR\vautoPublish\x12\x1e\n" + - "\n" + - "scriptUuid\x18\x15 \x01(\tR\n" + - "scriptUuid\x12\"\n" + - "\fartistSubNum\x18\x16 \x01(\tR\fartistSubNum\x12;\n" + - "\x0epublishConfig5\x18\x18 \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig5\"1\n" + - "\x13UpdateWorkVideoResp\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\"\x90\x01\n" + - "\fMediaInfoReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x124\n" + - "\n" + - "platformID\x18\x02 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12*\n" + - "\x10platformUserName\x18\x03 \x01(\tR\x10platformUserName\"8\n" + - "\rMediaInfoResp\x12'\n" + - "\x04info\x18\x01 \x01(\v2\x13.Cast.MediaUserInfoR\x04info\"n\n" + - "\x16MediaInfoByPlatformReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x124\n" + - "\n" + - "platformID\x18\x02 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\"B\n" + - "\x17MediaInfoByPlatformResp\x12'\n" + - "\x04info\x18\x01 \x01(\v2\x13.Cast.MediaUserInfoR\x04info\"\xd9\b\n" + - "\vWorkListReq\x12\x1c\n" + - "\tartistVal\x18\x01 \x01(\tR\tartistVal\x12\x1e\n" + - "\n" + - "platformID\x18\x02 \x01(\rR\n" + - "platformID\x12\"\n" + - "\fworkCategory\x18\x03 \x01(\rR\fworkCategory\x12(\n" + - "\x0fsubmitStartTime\x18\x04 \x01(\tR\x0fsubmitStartTime\x12$\n" + - "\rsubmitEndTime\x18\x05 \x01(\tR\rsubmitEndTime\x124\n" + - "\x15statusUpdateTimeStart\x18\x06 \x01(\tR\x15statusUpdateTimeStart\x120\n" + - "\x13statusUpdateTimeEnd\x18\a \x01(\tR\x13statusUpdateTimeEnd\x12\x14\n" + - "\x05title\x18\b \x01(\tR\x05title\x12\x1e\n" + - "\n" + - "workStatus\x18\t \x01(\rR\n" + - "workStatus\x12*\n" + - "\x10mediaAccountUuid\x18\n" + - " \x01(\tR\x10mediaAccountUuid\x12&\n" + - "\x0emanagerUserVal\x18\v \x01(\tR\x0emanagerUserVal\x12\x12\n" + - "\x04page\x18\f \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\r \x01(\x05R\bpageSize\x12,\n" + - "\x11mediaAccountUuids\x18\x0e \x03(\tR\x11mediaAccountUuids\x12\x1a\n" + - "\bcostType\x18\x0f \x01(\x05R\bcostType\x12\x1e\n" + - "\n" + - "scriptUuid\x18\x10 \x01(\tR\n" + - "scriptUuid\x12\"\n" + - "\fartistSubNum\x18\x11 \x01(\tR\fartistSubNum\x12\"\n" + - "\ftiktokStatus\x18\x12 \x01(\rR\ftiktokStatus\x12\x1c\n" + - "\tinsStatus\x18\x13 \x01(\rR\tinsStatus\x12\x1a\n" + - "\bdmStatus\x18\x14 \x01(\rR\bdmStatus\x12\x1e\n" + - "\n" + - "startTime1\x18\x15 \x01(\tR\n" + - "startTime1\x12\x1a\n" + - "\bendTime1\x18\x16 \x01(\tR\bendTime1\x12\x1e\n" + - "\n" + - "startTime4\x18\x17 \x01(\tR\n" + - "startTime4\x12\x1a\n" + - "\bendTime4\x18\x18 \x01(\tR\bendTime4\x12\x1e\n" + - "\n" + - "startTime9\x18\x19 \x01(\tR\n" + - "startTime9\x12\x1a\n" + - "\bendTime9\x18\x1a \x01(\tR\bendTime9\x12\x1e\n" + - "\n" + - "startTime6\x18\x1b \x01(\tR\n" + - "startTime6\x12\x1a\n" + - "\bendTime6\x18\x1c \x01(\tR\bendTime6\x12.\n" + - "\x12NeedPublishMediaID\x18\x1d \x01(\bR\x12NeedPublishMediaID\x12$\n" + - "\ryoutubeStatus\x18\x1e \x01(\rR\ryoutubeStatus\x12$\n" + - "\rblueskyStatus\x18\x1f \x01(\rR\rblueskyStatus\x12\x1e\n" + - "\n" + - "artistUuid\x18 \x01(\tR\n" + - "artistUuid\"\xd6\t\n" + - "\fWorkListResp\x12+\n" + - "\x04data\x18\x01 \x03(\v2\x17.Cast.WorkListResp.InfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\x1a\x82\t\n" + - "\x04Info\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "artistName\x18\x02 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x03 \x01(\tR\vartistPhone\x12\x14\n" + - "\x05title\x18\x04 \x01(\tR\x05title\x12\"\n" + - "\fworkCategory\x18\x05 \x01(\rR\fworkCategory\x12\x1e\n" + - "\n" + - "workStatus\x18\x06 \x01(\rR\n" + - "workStatus\x12\x1e\n" + - "\n" + - "submitTime\x18\a \x01(\tR\n" + - "submitTime\x12*\n" + - "\x10statusUpdateTime\x18\b \x01(\tR\x10statusUpdateTime\x12 \n" + - "\vplatformIDs\x18\t \x03(\rR\vplatformIDs\x12,\n" + - "\x11mediaAccountNames\x18\n" + - " \x03(\tR\x11mediaAccountNames\x12,\n" + - "\x11mediaAccountUuids\x18\v \x03(\tR\x11mediaAccountUuids\x12*\n" + - "\x10managerUserNames\x18\f \x03(\tR\x10managerUserNames\x12\"\n" + - "\fmanagerUuids\x18\r \x03(\tR\fmanagerUuids\x12\x1e\n" + - "\n" + - "approvalID\x18\x0e \x01(\tR\n" + - "approvalID\x12\x1a\n" + - "\bcostType\x18\x0f \x01(\rR\bcostType\x12\x1e\n" + - "\n" + - "scriptUuid\x18\x10 \x01(\tR\n" + - "scriptUuid\x12 \n" + - "\vscriptTitle\x18\x11 \x01(\tR\vscriptTitle\x12\"\n" + - "\fartistSubNum\x18\x12 \x01(\tR\fartistSubNum\x12\"\n" + - "\ftiktokStatus\x18\x13 \x01(\rR\ftiktokStatus\x12\x1c\n" + - "\tinsStatus\x18\x14 \x01(\rR\tinsStatus\x12\x1a\n" + - "\bdmStatus\x18\x15 \x01(\rR\bdmStatus\x12 \n" + - "\vconfirmType\x18\x16 \x01(\rR\vconfirmType\x12\x16\n" + - "\x06remark\x18\x17 \x01(\tR\x06remark\x12 \n" + - "\vstatus1Time\x18\x18 \x01(\tR\vstatus1Time\x12 \n" + - "\vstatus4Time\x18\x19 \x01(\tR\vstatus4Time\x12 \n" + - "\vstatus9Time\x18\x1a \x01(\tR\vstatus9Time\x12 \n" + - "\vstatus6Time\x18\x1b \x01(\tR\vstatus6Time\x12V\n" + - "\x0fPublishMediaIDs\x18\x1c \x03(\v2,.Cast.WorkListResp.Info.PublishMediaIDsEntryR\x0fPublishMediaIDs\x12$\n" + - "\ryoutubeStatus\x18\x1d \x01(\rR\ryoutubeStatus\x12$\n" + - "\rblueskyStatus\x18\x1e \x01(\rR\rblueskyStatus\x1aB\n" + - "\x14PublishMediaIDsEntry\x12\x10\n" + - "\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" + - "\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"+\n" + - "\rWorkDetailReq\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\"\xfb\x01\n" + - "\vWorkLogInfo\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\"\n" + - "\foperatorName\x18\x04 \x01(\tR\foperatorName\x12\x1e\n" + - "\n" + - "operatorID\x18\x05 \x01(\tR\n" + - "operatorID\x12\x1e\n" + - "\n" + - "updateTime\x18\x06 \x01(\tR\n" + - "updateTime\x12\x1c\n" + - "\textraData\x18\a \x01(\tR\textraData\x12\x1e\n" + - "\n" + - "workStatus\x18\b \x01(\rR\n" + - "workStatus\"\xf0\b\n" + - "\x0eWorkDetailResp\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\x16\n" + - "\x06images\x18\x04 \x03(\tR\x06images\x12,\n" + - "\x11mediaAccountUuids\x18\x05 \x03(\tR\x11mediaAccountUuids\x12,\n" + - "\x11mediaAccountNames\x18\x06 \x03(\tR\x11mediaAccountNames\x12 \n" + - "\vplatformIDs\x18\a \x03(\rR\vplatformIDs\x12\x1e\n" + - "\n" + - "workStatus\x18\b \x01(\rR\n" + - "workStatus\x12;\n" + - "\x0epublishConfig1\x18\t \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig1\x12;\n" + - "\x0epublishConfig2\x18\n" + - " \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig2\x12;\n" + - "\x0epublishConfig3\x18\v \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig3\x12;\n" + - "\x0epublishConfig4\x18\f \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig4\x12\x1a\n" + - "\bvideoUrl\x18\r \x01(\tR\bvideoUrl\x12\x1a\n" + - "\bcoverUrl\x18\x0e \x01(\tR\bcoverUrl\x12\x1e\n" + - "\n" + - "approvalID\x18\x0f \x01(\tR\n" + - "approvalID\x123\n" + - "\vWorkLogData\x18\x10 \x03(\v2\x11.Cast.WorkLogInfoR\vWorkLogData\x12\"\n" + - "\fworkCategory\x18\x11 \x01(\rR\fworkCategory\x12J\n" + - "\fmediaAccData\x18\x12 \x03(\v2&.Cast.WorkDetailResp.MediaAccDataEntryR\fmediaAccData\x12*\n" + - "\x10coverTimestampMs\x18\x13 \x01(\x04R\x10coverTimestampMs\x12\x1e\n" + - "\n" + - "scriptUuid\x18\x14 \x01(\tR\n" + - "scriptUuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x15 \x01(\tR\n" + - "artistUuid\x12(\n" + - "\x0fneedPlatformIDs\x18\x19 \x03(\x05R\x0fneedPlatformIDs\x12\"\n" + - "\fartistSubNum\x18\x1a \x01(\tR\fartistSubNum\x12\x1e\n" + - "\n" + - "scriptInfo\x18\x1b \x01(\tR\n" + - "scriptInfo\x12;\n" + - "\x0epublishConfig5\x18\x1c \x01(\v2\x13.Cast.PublishConfigR\x0epublishConfig5\x1aT\n" + - "\x11MediaAccDataEntry\x12\x10\n" + - "\x03key\x18\x01 \x01(\tR\x03key\x12)\n" + - "\x05value\x18\x02 \x01(\v2\x13.Cast.MediaUserInfoR\x05value:\x028\x01\"\xaf\x03\n" + - "\x0fUpdateStatusReq\x124\n" + - "\n" + - "workAction\x18\x01 \x01(\x0e2\x14.Cast.WorkActionENUMR\n" + - "workAction\x12\x1a\n" + - "\bworkUuid\x18\x02 \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "approvalID\x18\x03 \x01(\tR\n" + - "approvalID\x12$\n" + - "\rconfirmRemark\x18\x04 \x01(\tR\rconfirmRemark\x12$\n" + - "\rconfirmStatus\x18\x05 \x01(\rR\rconfirmStatus\x12$\n" + - "\rapprovalReply\x18\x06 \x01(\tR\rapprovalReply\x127\n" + - "\vautoPublish\x18\a \x01(\x0e2\x15.Cast.AutoPublishENUMR\vautoPublish\x12\x1a\n" + - "\bcostType\x18\b \x01(\rR\bcostType\x12?\n" + - "\x0fconfirmFailType\x18\t \x01(\x0e2\x15.Cast.ConfirmFailENUMR\x0fconfirmFailType\x12\"\n" + - "\fapprovalTime\x18\n" + - " \x01(\tR\fapprovalTime\"2\n" + - "\x10MediaAccountsReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\"\xa2\x02\n" + - "\x11MediaAccountsResp\x120\n" + - "\x04data\x18\x01 \x03(\v2\x1c.Cast.MediaAccountsResp.InfoR\x04data\x1a\xda\x01\n" + - "\x04Info\x12\x1e\n" + - "\n" + - "platformID\x18\x01 \x01(\rR\n" + - "platformID\x12\x1c\n" + - "\tfansCount\x18\x02 \x01(\rR\tfansCount\x12\x1c\n" + - "\tworkCount\x18\x03 \x01(\rR\tworkCount\x12\x1e\n" + - "\n" + - "artistUuid\x18\x04 \x01(\tR\n" + - "artistUuid\x12*\n" + - "\x10mediaAccountUuid\x18\x05 \x01(\tR\x10mediaAccountUuid\x12*\n" + - "\x10mediaAccountName\x18\x06 \x01(\tR\x10mediaAccountName\"k\n" + - "\rMediaWorksReq\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\x12\x12\n" + - "\x04page\x18\x02 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x03 \x01(\x05R\bpageSize\"\x8a\x03\n" + - "\x0eMediaWorksResp\x12\x14\n" + - "\x05count\x18\x01 \x01(\x03R\x05count\x12-\n" + - "\x04data\x18\x02 \x03(\v2\x19.Cast.MediaWorksResp.InfoR\x04data\x1a\xb2\x02\n" + - "\x04Info\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\"\n" + - "\fworkCategory\x18\x04 \x01(\rR\fworkCategory\x12\x1e\n" + - "\n" + - "workStatus\x18\x05 \x01(\rR\n" + - "workStatus\x12\x1e\n" + - "\n" + - "submitTime\x18\x06 \x01(\tR\n" + - "submitTime\x12*\n" + - "\x10statusUpdateTime\x18\a \x01(\tR\x10statusUpdateTime\x12\x16\n" + - "\x06images\x18\b \x03(\tR\x06images\x12\x1a\n" + - "\bvideoUrl\x18\t \x01(\tR\bvideoUrl\x12\x1a\n" + - "\bcoverUrl\x18\n" + - " \x01(\tR\bcoverUrl\"*\n" + - "\n" + - "PublishReq\x12\x1c\n" + - "\tworkUuids\x18\x01 \x03(\tR\tworkUuids\"\x85\x01\n" + - "\vPublishResp\x12*\n" + - "\x04data\x18\x01 \x03(\v2\x16.Cast.PublishResp.InfoR\x04data\x1aJ\n" + - "\x04Info\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\"\n" + - "\fworkCategory\x18\x02 \x01(\x05R\fworkCategory\"Z\n" + - "\fRePublishReq\x12\x1c\n" + - "\tworkUuids\x18\x01 \x03(\tR\tworkUuids\x12,\n" + - "\x11mediaAccountUuids\x18\x02 \x03(\tR\x11mediaAccountUuids\"M\n" + - "\rRePublishResp\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\x1c\n" + - "\tworkUuids\x18\x03 \x03(\tR\tworkUuids\"(\n" + - "\n" + - "DelWorkReq\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\")\n" + - "\vWorkInfoReq\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\"\xe6\x01\n" + - "\fWorkInfoResp\x12\x1e\n" + - "\n" + - "workStatus\x18\x01 \x01(\rR\n" + - "workStatus\x12\x1e\n" + - "\n" + - "artistUuid\x18\x02 \x01(\tR\n" + - "artistUuid\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x04 \x01(\tR\vartistPhone\x120\n" + - "\x13artistPhoneAreaCode\x18\x05 \x01(\tR\x13artistPhoneAreaCode\x12\"\n" + - "\fworkCategory\x18\x06 \x01(\rR\fworkCategory\"/\n" + - "\rArtistInfoReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\"\x8c\x02\n" + - "\x0eArtistInfoResp\x122\n" + - "\x14TikTokEffectiveCount\x18\x01 \x01(\rR\x14TikTokEffectiveCount\x124\n" + - "\x15YouTubeEffectiveCount\x18\x02 \x01(\rR\x15YouTubeEffectiveCount\x12,\n" + - "\x11InsEffectiveCount\x18\x03 \x01(\rR\x11InsEffectiveCount\x12*\n" + - "\x10DMEffectiveCount\x18\x04 \x01(\rR\x10DMEffectiveCount\x12\x1e\n" + - "\n" + - "profileKey\x18\x05 \x01(\tR\n" + - "profileKey\x12\x16\n" + - "\x06subNum\x18\x06 \x01(\tR\x06subNum\"N\n" + - "\x12ImportWorkBatchReq\x128\n" + - "\n" + - "imageWorks\x18\x01 \x03(\v2\x18.Cast.UpdateWorkImageReqR\n" + - "imageWorks\"\x91\x01\n" + - "\x13ImportWorkBatchResp\x128\n" + - "\n" + - "imageWorks\x18\x01 \x03(\v2\x18.Cast.UpdateWorkImageReqR\n" + - "imageWorks\x12\"\n" + - "\fsuccessCount\x18\x02 \x01(\x05R\fsuccessCount\x12\x1c\n" + - "\tfailCount\x18\x03 \x01(\x05R\tfailCount\"\xdd\x02\n" + - "\fPlatformInfo\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12*\n" + - "\x10mediaAccountUuid\x18\x02 \x01(\tR\x10mediaAccountUuid\x12\x1e\n" + - "\n" + - "platformID\x18\x03 \x01(\rR\n" + - "platformID\x12 \n" + - "\vpublishType\x18\x04 \x01(\rR\vpublishType\x12 \n" + - "\vpublishResp\x18\x05 \x01(\tR\vpublishResp\x12&\n" + - "\x0epublishMediaId\x18\x06 \x01(\tR\x0epublishMediaId\x12=\n" + - "\rpublishStatus\x18\a \x01(\x0e2\x17.Cast.PublishStatusENUMR\rpublishStatus\x12\x16\n" + - "\x06remark\x18\b \x01(\tR\x06remark\x12\"\n" + - "\fplatformUuid\x18\t \x01(\tR\fplatformUuid\"[\n" + - "\x19UpdateWorkPlatformInfoReq\x12>\n" + - "\x10PlatformInfoData\x18\x01 \x03(\v2\x12.Cast.PlatformInfoR\x10PlatformInfoData\"8\n" + - "\x1aUpdateWorkPlatformInfoResp\x12\x1a\n" + - "\bworkUuid\x18\x01 \x03(\tR\bworkUuid\"\x9b\x01\n" + - "\x17UpdateWorkPublishLogReq\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x124\n" + - "\n" + - "platformID\x18\x02 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12\x16\n" + - "\x06detail\x18\x03 \x01(\tR\x06detail\x12\x16\n" + - "\x06action\x18\x04 \x01(\tR\x06action\":\n" + - "\x12RefreshWorkListReq\x12$\n" + - "\rpublishStatus\x18\x01 \x01(\rR\rpublishStatus\"\xe2\x03\n" + - "\x13RefreshWorkListResp\x122\n" + - "\x04Data\x18\x03 \x03(\v2\x1e.Cast.RefreshWorkListResp.InfoR\x04Data\x1a\x96\x03\n" + - "\x04Info\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12W\n" + - "\x10PlatformInfoData\x18\x02 \x03(\v2+.Cast.RefreshWorkListResp.Info.PlatformInfoR\x10PlatformInfoData\x12\x1e\n" + - "\n" + - "profileKey\x18\x03 \x01(\tR\n" + - "profileKey\x1a\xf8\x01\n" + - "\fPlatformInfo\x12&\n" + - "\x0epublishMediaID\x18\x01 \x01(\tR\x0epublishMediaID\x124\n" + - "\n" + - "platformID\x18\x02 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12.\n" + - "\x12publishMediaStatus\x18\x03 \x01(\rR\x12publishMediaStatus\x12 \n" + - "\vmediaUserID\x18\x04 \x01(\tR\vmediaUserID\x12\"\n" + - "\fplatformUuid\x18\x05 \x01(\tR\fplatformUuid\x12\x14\n" + - "\x05token\x18\x06 \x01(\tR\x05token\"=\n" + - "\x0fOAuthAccountReq\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\"$\n" + - "\x10OAuthAccountResp\x12\x10\n" + - "\x03url\x18\x01 \x01(\tR\x03url\"?\n" + - "\x11OAuthAccountV2Req\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\"\x8e\x01\n" + - "\x12OAuthAccountV2Resp\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\x1e\n" + - "\n" + - "profileKey\x18\x02 \x01(\tR\n" + - "profileKey\x12\x1e\n" + - "\n" + - "platformID\x18\x03 \x01(\rR\n" + - "platformID\x12\x18\n" + - "\aauthUrl\x18\x04 \x01(\tR\aauthUrl\"V\n" + - "\x14OAuthYoutubeTokenReq\x12*\n" + - "\x10mediaAccountUuid\x18\x01 \x01(\tR\x10mediaAccountUuid\x12\x12\n" + - "\x04code\x18\x02 \x01(\tR\x04code\"}\n" + - "\x15OAuthYoutubeTokenResp\x12 \n" + - "\vaccessToken\x18\x01 \x01(\tR\vaccessToken\x12\"\n" + - "\frefreshToken\x18\x02 \x01(\tR\frefreshToken\x12\x1e\n" + - "\n" + - "expireTime\x18\x03 \x01(\x03R\n" + - "expireTime\"w\n" + - "\x13OAuthCodeToTokenReq\x12\x12\n" + - "\x04code\x18\x01 \x01(\tR\x04code\x12\x16\n" + - "\x06userID\x18\x02 \x01(\tR\x06userID\x124\n" + - "\n" + - "platformID\x18\x03 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\"\x16\n" + - "\x14OAuthCodeToTokenResp\"\xf8\x01\n" + - "\x0eUpdateOAuthReq\x12-\n" + - "\x04Data\x18\x01 \x03(\v2\x19.Cast.UpdateOAuthReq.InfoR\x04Data\x1a\xb6\x01\n" + - "\x04Info\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x124\n" + - "\n" + - "platformID\x18\x02 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12\x12\n" + - "\x04asID\x18\x03 \x01(\tR\x04asID\x12*\n" + - "\x10platformUserName\x18\x04 \x01(\tR\x10platformUserName\x12\x18\n" + - "\aautInfo\x18\x05 \x01(\tR\aautInfo\"\x83\x01\n" + - "\x0fRefreshTokenReq\x12\"\n" + - "\frefreshToken\x18\x01 \x01(\tR\frefreshToken\x124\n" + - "\n" + - "platformID\x18\x02 \x01(\x0e2\x14.Cast.PlatformIDENUMR\n" + - "platformID\x12\x16\n" + - "\x06userID\x18\x03 \x01(\tR\x06userID\"\\\n" + - "\x10RefreshTokenResp\x12 \n" + - "\vaccessToken\x18\x01 \x01(\tR\vaccessToken\x12&\n" + - "\x0eplatformUserID\x18\x02 \x01(\tR\x0eplatformUserID\"\x7f\n" + - "\x13PublishMediaInfoReq\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "platformID\x18\x02 \x01(\x05R\n" + - "platformID\x12,\n" + - "\x11platformMediaUuid\x18\x03 \x01(\tR\x11platformMediaUuid\"\x94\x01\n" + - "\x14PublishMediaInfoResp\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "platformID\x18\x02 \x01(\x05R\n" + - "platformID\x12,\n" + - "\x11platformMediaUuid\x18\x03 \x01(\tR\x11platformMediaUuid\x12\x12\n" + - "\x04info\x18\x04 \x01(\tR\x04info\"\"\n" + - "\bToolsReq\x12\x16\n" + - "\x06action\x18\x01 \x01(\tR\x06action\"\x9e\x02\n" + - "\x14UpdateVideoScriptReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12 \n" + - "\vcreatorUuid\x18\x04 \x01(\tR\vcreatorUuid\x12 \n" + - "\vcreatorName\x18\x05 \x01(\tR\vcreatorName\x12\x1e\n" + - "\n" + - "artistUuid\x18\x06 \x01(\tR\n" + - "artistUuid\x12 \n" + - "\vartistPhone\x18\a \x01(\tR\vartistPhone\x12\x1c\n" + - "\tartistNum\x18\b \x01(\tR\tartistNum\x12\x1e\n" + - "\n" + - "artistName\x18\t \x01(\tR\n" + - "artistName\"+\n" + - "\x15UpdateVideoScriptResp\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"'\n" + - "\x11GetVideoScriptReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"\x8c\x03\n" + - "\x12GetVideoScriptResp\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\x16\n" + - "\x06status\x18\x04 \x01(\rR\x06status\x12\x1e\n" + - "\n" + - "artistUuid\x18\x05 \x01(\tR\n" + - "artistUuid\x12\x1e\n" + - "\n" + - "artistName\x18\x06 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\a \x01(\tR\vartistPhone\x12 \n" + - "\vcreatorUuid\x18\b \x01(\tR\vcreatorUuid\x12 \n" + - "\vcreatorName\x18\t \x01(\tR\vcreatorName\x12\x1e\n" + - "\n" + - "quoteCount\x18\n" + - " \x01(\x05R\n" + - "quoteCount\x12\x1c\n" + - "\tartistNum\x18\v \x01(\tR\tartistNum\x12\x16\n" + - "\x06remark\x18\f \x01(\tR\x06remark\x12\x1e\n" + - "\n" + - "approvalID\x18\r \x01(\tR\n" + - "approvalID\"\xb5\x02\n" + - "\x13ListVideoScriptsReq\x12\x14\n" + - "\x05title\x18\x01 \x01(\tR\x05title\x12\x16\n" + - "\x06status\x18\x02 \x01(\rR\x06status\x12&\n" + - "\x0eartistKeywords\x18\x03 \x01(\tR\x0eartistKeywords\x12(\n" + - "\x0fcreatorKeywords\x18\x04 \x01(\tR\x0fcreatorKeywords\x12(\n" + - "\x0fcreateStartDate\x18\x05 \x01(\tR\x0fcreateStartDate\x12$\n" + - "\rcreateEndDate\x18\x06 \x01(\tR\rcreateEndDate\x12\x12\n" + - "\x04page\x18\a \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\b \x01(\x05R\bpageSize\x12\x1e\n" + - "\n" + - "artistUuid\x18\t \x01(\tR\n" + - "artistUuid\"\xa5\x03\n" + - "\x0fVideoScriptInfo\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\x1e\n" + - "\n" + - "artistUuid\x18\x04 \x01(\tR\n" + - "artistUuid\x12\x1e\n" + - "\n" + - "artistName\x18\x05 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x06 \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "quoteCount\x18\a \x01(\x05R\n" + - "quoteCount\x12 \n" + - "\vcreatorUuid\x18\b \x01(\tR\vcreatorUuid\x12 \n" + - "\vcreatorName\x18\t \x01(\tR\vcreatorName\x12\x16\n" + - "\x06status\x18\n" + - " \x01(\rR\x06status\x12 \n" + - "\vcreatedDate\x18\v \x01(\tR\vcreatedDate\x12\x1c\n" + - "\tartistNum\x18\f \x01(\tR\tartistNum\x12\x16\n" + - "\x06remark\x18\r \x01(\tR\x06remark\x12\x18\n" + - "\asuccess\x18\x0e \x01(\bR\asuccess\"W\n" + - "\x14ListVideoScriptsResp\x12)\n" + - "\x04data\x18\x01 \x03(\v2\x15.Cast.VideoScriptInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"*\n" + - "\x14DeleteVideoScriptReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"F\n" + - "\x19UpdateVideoScriptBatchReq\x12)\n" + - "\x04data\x18\x01 \x03(\v2\x15.Cast.VideoScriptInfoR\x04data\"\x89\x01\n" + - "\x1aUpdateVideoScriptBatchResp\x12)\n" + - "\x04data\x18\x01 \x03(\v2\x15.Cast.VideoScriptInfoR\x04data\x12\"\n" + - "\fsuccessCount\x18\x02 \x01(\x05R\fsuccessCount\x12\x1c\n" + - "\tfailCount\x18\x03 \x01(\x05R\tfailCount\"\xa7\x01\n" + - "\x15UpdateScriptStatusReq\x124\n" + - "\n" + - "workAction\x18\x01 \x01(\x0e2\x14.Cast.WorkActionENUMR\n" + - "workAction\x12\x12\n" + - "\x04uuid\x18\x02 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "approvalID\x18\x03 \x01(\tR\n" + - "approvalID\x12$\n" + - "\rapprovalReply\x18\x04 \x01(\tR\rapprovalReply\"V\n" + - "\fSetLayoutReq\x12\x16\n" + - "\x06userID\x18\x01 \x01(\tR\x06userID\x12\x12\n" + - "\x04data\x18\x02 \x01(\tR\x04data\x12\x1a\n" + - "\bformName\x18\x03 \x01(\tR\bformName\"B\n" + - "\fGetLayoutReq\x12\x16\n" + - "\x06userID\x18\x01 \x01(\tR\x06userID\x12\x1a\n" + - "\bformName\x18\x02 \x01(\tR\bformName\"?\n" + - "\rGetLayoutResp\x12\x12\n" + - "\x04data\x18\x01 \x01(\tR\x04data\x12\x1a\n" + - "\bformName\x18\x03 \x01(\tR\bformName\"y\n" + - "\x0fUpdatePromptReq\x12\x1e\n" + - "\n" + - "promptUuid\x18\x01 \x01(\tR\n" + - "promptUuid\x12\x16\n" + - "\x06prompt\x18\x02 \x01(\tR\x06prompt\x12.\n" + - "\bcategory\x18\x03 \x01(\x0e2\x12.Cast.CategoryENUMR\bcategory\"1\n" + - "\x0fDeletePromptReq\x12\x1e\n" + - "\n" + - "promptUuid\x18\x01 \x01(\tR\n" + - "promptUuid\".\n" + - "\fGetPromptReq\x12\x1e\n" + - "\n" + - "promptUuid\x18\x01 \x01(\tR\n" + - "promptUuid\"\x93\x01\n" + - "\rGetPromptResp\x12\x1e\n" + - "\n" + - "promptUuid\x18\x01 \x01(\tR\n" + - "promptUuid\x12\x16\n" + - "\x06prompt\x18\x02 \x01(\tR\x06prompt\x12.\n" + - "\bcategory\x18\x03 \x01(\x0e2\x12.Cast.CategoryENUMR\bcategory\x12\x1a\n" + - "\buseCount\x18\x04 \x01(\rR\buseCount\"\xe4\x01\n" + - "\x0eListPromptsReq\x12\x16\n" + - "\x06prompt\x18\x01 \x01(\tR\x06prompt\x12.\n" + - "\bcategory\x18\x02 \x01(\x0e2\x12.Cast.CategoryENUMR\bcategory\x12\x12\n" + - "\x04page\x18\x03 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x04 \x01(\x05R\bpageSize\x12\x12\n" + - "\x04rand\x18\x05 \x01(\bR\x04rand\x12$\n" + - "\rstartUseCount\x18\x06 \x01(\x05R\rstartUseCount\x12 \n" + - "\vendUseCount\x18\a \x01(\x05R\vendUseCount\"\xfc\x01\n" + - "\n" + - "PromptInfo\x12\x1e\n" + - "\n" + - "promptUuid\x18\x01 \x01(\tR\n" + - "promptUuid\x12\x16\n" + - "\x06prompt\x18\x02 \x01(\tR\x06prompt\x12.\n" + - "\bcategory\x18\x03 \x01(\x0e2\x12.Cast.CategoryENUMR\bcategory\x12\x16\n" + - "\x06remark\x18\x04 \x01(\tR\x06remark\x12\x18\n" + - "\asuccess\x18\x05 \x01(\bR\asuccess\x12\x1a\n" + - "\buseCount\x18\x06 \x01(\rR\buseCount\x12\x16\n" + - "\x06lineNo\x18\a \x01(\rR\x06lineNo\x12 \n" + - "\vcreatedDate\x18\b \x01(\tR\vcreatedDate\"M\n" + - "\x0fListPromptsResp\x12$\n" + - "\x04data\x18\x01 \x03(\v2\x10.Cast.PromptInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"<\n" + - "\x14UpdatePromptBatchReq\x12$\n" + - "\x04data\x18\x01 \x03(\v2\x10.Cast.PromptInfoR\x04data\"\x7f\n" + - "\x15UpdatePromptBatchResp\x12$\n" + - "\x04data\x18\x01 \x03(\v2\x10.Cast.PromptInfoR\x04data\x12\"\n" + - "\fsuccessCount\x18\x02 \x01(\x05R\fsuccessCount\x12\x1c\n" + - "\tfailCount\x18\x03 \x01(\x05R\tfailCount\"z\n" + - "\n" + - "ArtistInfo\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\x14\n" + - "\x05refID\x18\x02 \x01(\tR\x05refID\x12\x1e\n" + - "\n" + - "profileKey\x18\x03 \x01(\tR\n" + - "profileKey\x12\x16\n" + - "\x06subNum\x18\x04 \x01(\tR\x06subNum\"W\n" + - "\x0fUpdateArtistReq\x120\n" + - "\n" + - "artistInfo\x18\x01 \x01(\v2\x10.Cast.ArtistInfoR\n" + - "artistInfo\x12\x12\n" + - "\x04Uuid\x18\x02 \x01(\tR\x04Uuid\"2\n" + - "\x10UpdateArtistResp\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\".\n" + - "\fGetArtistReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\"U\n" + - "\rGetArtistResp\x120\n" + - "\n" + - "artistInfo\x18\x01 \x01(\v2\x10.Cast.ArtistInfoR\n" + - "artistInfo\x12\x12\n" + - "\x04Uuid\x18\x02 \x01(\tR\x04Uuid\"\xa7\x06\n" + - "\x15CreateWorkAnalysisReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12\x1a\n" + - "\bartistID\x18\x04 \x01(\tR\bartistID\x12 \n" + - "\vartistPhone\x18\x05 \x01(\tR\vartistPhone\x12\x1a\n" + - "\banalysis\x18\x06 \x01(\tR\banalysis\x12\x14\n" + - "\x05title\x18\a \x01(\tR\x05title\x12\x16\n" + - "\x06pdfUrl\x18\b \x01(\tR\x06pdfUrl\x12,\n" + - "\x11mediaAccountCount\x18\t \x01(\x05R\x11mediaAccountCount\x12&\n" + - "\x0eworkVideoCount\x18\n" + - " \x01(\x05R\x0eworkVideoCount\x12&\n" + - "\x0eworkImageCount\x18\v \x01(\x05R\x0eworkImageCount\x12\x14\n" + - "\x05views\x18\f \x01(\x05R\x05views\x12\x14\n" + - "\x05likes\x18\r \x01(\x05R\x05likes\x12\x1a\n" + - "\bcomments\x18\x0e \x01(\x05R\bcomments\x12\x16\n" + - "\x06shares\x18\x0f \x01(\x05R\x06shares\x12\x1c\n" + - "\tfansCount\x18\x10 \x01(\x05R\tfansCount\x12\x1c\n" + - "\ttopCities\x18\x11 \x01(\x05R\ttopCities\x12$\n" + - "\rmostActiveDay\x18\x12 \x01(\x05R\rmostActiveDay\x12\"\n" + - "\fbestPostTime\x18\x13 \x01(\x05R\fbestPostTime\x12&\n" + - "\x0eperiodTypeFans\x18\x15 \x01(\rR\x0eperiodTypeFans\x12(\n" + - "\x0fperiodTypeViews\x18\x16 \x01(\rR\x0fperiodTypeViews\x12(\n" + - "\x0fperiodTypeLikes\x18\x17 \x01(\rR\x0fperiodTypeLikes\x12.\n" + - "\x12periodTypeComments\x18\x18 \x01(\rR\x12periodTypeComments\x12*\n" + - "\x10periodTypeShares\x18\x19 \x01(\rR\x10periodTypeShares\",\n" + - "\x16CreateWorkAnalysisResp\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"\xd1\x05\n" + - "\x15UpdateWorkAnalysisReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1a\n" + - "\banalysis\x18\x02 \x01(\tR\banalysis\x12\x14\n" + - "\x05title\x18\x03 \x01(\tR\x05title\x12\x16\n" + - "\x06pdfUrl\x18\x04 \x01(\tR\x06pdfUrl\x12,\n" + - "\x11mediaAccountCount\x18\x05 \x01(\x05R\x11mediaAccountCount\x12&\n" + - "\x0eworkVideoCount\x18\x06 \x01(\x05R\x0eworkVideoCount\x12&\n" + - "\x0eworkImageCount\x18\a \x01(\x05R\x0eworkImageCount\x12\x14\n" + - "\x05views\x18\b \x01(\x05R\x05views\x12\x14\n" + - "\x05likes\x18\t \x01(\x05R\x05likes\x12\x1a\n" + - "\bcomments\x18\n" + - " \x01(\x05R\bcomments\x12\x16\n" + - "\x06shares\x18\v \x01(\x05R\x06shares\x12\x1c\n" + - "\tfansCount\x18\f \x01(\x05R\tfansCount\x12\x1c\n" + - "\ttopCities\x18\r \x01(\x05R\ttopCities\x12$\n" + - "\rmostActiveDay\x18\x0e \x01(\x05R\rmostActiveDay\x12\"\n" + - "\fbestPostTime\x18\x0f \x01(\x05R\fbestPostTime\x12\x1e\n" + - "\n" + - "artistUUID\x18\x10 \x01(\tR\n" + - "artistUUID\x12&\n" + - "\x0eperiodTypeFans\x18\x11 \x01(\rR\x0eperiodTypeFans\x12(\n" + - "\x0fperiodTypeViews\x18\x12 \x01(\rR\x0fperiodTypeViews\x12(\n" + - "\x0fperiodTypeLikes\x18\x13 \x01(\rR\x0fperiodTypeLikes\x12.\n" + - "\x12periodTypeComments\x18\x14 \x01(\rR\x12periodTypeComments\x12*\n" + - "\x10periodTypeShares\x18\x15 \x01(\rR\x10periodTypeShares\"\xb7\x02\n" + - "\x1bUpdateWorkAnalysisStatusReq\x124\n" + - "\n" + - "workAction\x18\x01 \x01(\x0e2\x14.Cast.WorkActionENUMR\n" + - "workAction\x12\x12\n" + - "\x04uuid\x18\x02 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "approvalID\x18\x03 \x01(\tR\n" + - "approvalID\x12$\n" + - "\rapprovalReply\x18\x04 \x01(\tR\rapprovalReply\x12$\n" + - "\rconfirmRemark\x18\x05 \x01(\tR\rconfirmRemark\x12$\n" + - "\rconfirmStatus\x18\x06 \x01(\rR\rconfirmStatus\x12\x1a\n" + - "\bcostType\x18\a \x01(\rR\bcostType\x12 \n" + - "\vconfirmType\x18\b \x01(\rR\vconfirmType\"\xc9\x02\n" + - "\x13WorkAnalysisLogInfo\x12\x1a\n" + - "\bworkUuid\x18\x01 \x01(\tR\bworkUuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x1e\n" + - "\n" + - "updateTime\x18\x03 \x01(\tR\n" + - "updateTime\x12.\n" + - "\x12workAnalysisStatus\x18\x04 \x01(\rR\x12workAnalysisStatus\x12\x1e\n" + - "\n" + - "artistName\x18\x05 \x01(\tR\n" + - "artistName\x12\x1e\n" + - "\n" + - "artistUuid\x18\x06 \x01(\tR\n" + - "artistUuid\x12,\n" + - "\x11analysisExtraData\x18\a \x01(\tR\x11analysisExtraData\x12\"\n" + - "\foperatorName\x18\b \x01(\tR\foperatorName\x12\x1e\n" + - "\n" + - "operatorID\x18\t \x01(\tR\n" + - "operatorID\"\xfe\x01\n" + - "\x16WorkAnalysisFansSeries\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1c\n" + - "\tfansCount\x18\x02 \x01(\x03R\tfansCount\x12\x1e\n" + - "\n" + - "periodType\x18\x03 \x01(\rR\n" + - "periodType\x12\x1c\n" + - "\tstartDate\x18\x04 \x01(\x05R\tstartDate\x12\x18\n" + - "\aendDate\x18\x05 \x01(\x05R\aendDate\x12\x1e\n" + - "\n" + - "detailJSON\x18\x06 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\a \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\b \x01(\x05R\tupdatedAt\"\x81\x02\n" + - "\x17WorkAnalysisViewsSeries\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "viewsCount\x18\x02 \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "periodType\x18\x03 \x01(\rR\n" + - "periodType\x12\x1c\n" + - "\tstartDate\x18\x04 \x01(\x05R\tstartDate\x12\x18\n" + - "\aendDate\x18\x05 \x01(\x05R\aendDate\x12\x1e\n" + - "\n" + - "detailJSON\x18\x06 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\a \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\b \x01(\x05R\tupdatedAt\"\x81\x02\n" + - "\x17WorkAnalysisLikesSeries\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "likesCount\x18\x02 \x01(\x03R\n" + - "likesCount\x12\x1e\n" + - "\n" + - "periodType\x18\x03 \x01(\rR\n" + - "periodType\x12\x1c\n" + - "\tstartDate\x18\x04 \x01(\x05R\tstartDate\x12\x18\n" + - "\aendDate\x18\x05 \x01(\x05R\aendDate\x12\x1e\n" + - "\n" + - "detailJSON\x18\x06 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\a \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\b \x01(\x05R\tupdatedAt\"\x8a\x02\n" + - "\x1aWorkAnalysisCommentsSeries\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12$\n" + - "\rcommentsCount\x18\x02 \x01(\x03R\rcommentsCount\x12\x1e\n" + - "\n" + - "periodType\x18\x03 \x01(\rR\n" + - "periodType\x12\x1c\n" + - "\tstartDate\x18\x04 \x01(\x05R\tstartDate\x12\x18\n" + - "\aendDate\x18\x05 \x01(\x05R\aendDate\x12\x1e\n" + - "\n" + - "detailJSON\x18\x06 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\a \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\b \x01(\x05R\tupdatedAt\"\x84\x02\n" + - "\x18WorkAnalysisSharesSeries\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12 \n" + - "\vsharesCount\x18\x02 \x01(\x03R\vsharesCount\x12\x1e\n" + - "\n" + - "periodType\x18\x03 \x01(\rR\n" + - "periodType\x12\x1c\n" + - "\tstartDate\x18\x04 \x01(\x05R\tstartDate\x12\x18\n" + - "\aendDate\x18\x05 \x01(\x05R\aendDate\x12\x1e\n" + - "\n" + - "detailJSON\x18\x06 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\a \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\b \x01(\x05R\tupdatedAt\"\x87\x01\n" + - "\x15WorkAnalysisTopCities\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "citiesJSON\x18\x02 \x01(\tR\n" + - "citiesJSON\x12\x1c\n" + - "\tcreatedAt\x18\x03 \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x04 \x01(\x05R\tupdatedAt\"\x8b\x01\n" + - "\x19WorkAnalysisMostActiveDay\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "detailJSON\x18\x02 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\x03 \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x04 \x01(\x05R\tupdatedAt\"\x8a\x01\n" + - "\x18WorkAnalysisBestPostTime\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "detailJSON\x18\x02 \x01(\tR\n" + - "detailJSON\x12\x1c\n" + - "\tcreatedAt\x18\x03 \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x04 \x01(\x05R\tupdatedAt\"\xc1\x01\n" + - "\x11WorkAnalysisExtra\x12\"\n" + - "\fanalysisUuid\x18\x01 \x01(\tR\fanalysisUuid\x120\n" + - "\x13artistConfirmedTime\x18\x02 \x01(\x03R\x13artistConfirmedTime\x12\x1a\n" + - "\bcostType\x18\x03 \x01(\rR\bcostType\x12\x1c\n" + - "\tcreatedAt\x18\x04 \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x05 \x01(\x05R\tupdatedAt\".\n" + - "\x18GetWorkAnalysisDetailReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"2\n" + - "\x18GetLatestWorkAnalysisReq\x12\x16\n" + - "\x06subNum\x18\x01 \x01(\tR\x06subNum\"\xef\v\n" + - "\x13GetWorkAnalysisResp\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12\x1a\n" + - "\bartistID\x18\x04 \x01(\tR\bartistID\x12 \n" + - "\vartistPhone\x18\x05 \x01(\tR\vartistPhone\x12\x1a\n" + - "\banalysis\x18\x06 \x01(\tR\banalysis\x12\x14\n" + - "\x05title\x18\a \x01(\tR\x05title\x12\x1e\n" + - "\n" + - "operatorID\x18\b \x01(\tR\n" + - "operatorID\x12\"\n" + - "\foperatorName\x18\t \x01(\tR\foperatorName\x12.\n" + - "\x12workAnalysisStatus\x18\n" + - " \x01(\rR\x12workAnalysisStatus\x12\x16\n" + - "\x06reason\x18\v \x01(\tR\x06reason\x12 \n" + - "\vcomfirmType\x18\f \x01(\x05R\vcomfirmType\x12\x12\n" + - "\x04cost\x18\r \x01(\rR\x04cost\x12\x1e\n" + - "\n" + - "submitTime\x18\x0e \x01(\tR\n" + - "submitTime\x12*\n" + - "\x10statusUpdateTime\x18\x0f \x01(\tR\x10statusUpdateTime\x12\x1e\n" + - "\n" + - "approvalID\x18\x10 \x01(\tR\n" + - "approvalID\x12\x16\n" + - "\x06pdfUrl\x18\x11 \x01(\tR\x06pdfUrl\x12,\n" + - "\x11mediaAccountCount\x18\x12 \x01(\x05R\x11mediaAccountCount\x12&\n" + - "\x0eworkVideoCount\x18\x13 \x01(\x05R\x0eworkVideoCount\x12&\n" + - "\x0eworkImageCount\x18\x14 \x01(\x05R\x0eworkImageCount\x12\x14\n" + - "\x05views\x18\x15 \x01(\x05R\x05views\x12\x14\n" + - "\x05likes\x18\x16 \x01(\x05R\x05likes\x12\x1a\n" + - "\bcomments\x18\x17 \x01(\x05R\bcomments\x12\x16\n" + - "\x06shares\x18\x18 \x01(\x05R\x06shares\x12\x1c\n" + - "\tfansCount\x18\x19 \x01(\x05R\tfansCount\x12\x1c\n" + - "\ttopCities\x18\x1a \x01(\x05R\ttopCities\x12$\n" + - "\rmostActiveDay\x18\x1b \x01(\x05R\rmostActiveDay\x12\"\n" + - "\fbestPostTime\x18\x1c \x01(\x05R\fbestPostTime\x12\x1c\n" + - "\tcreatedAt\x18\x1d \x01(\tR\tcreatedAt\x12<\n" + - "\n" + - "fansSeries\x18\x1e \x01(\v2\x1c.Cast.WorkAnalysisFansSeriesR\n" + - "fansSeries\x12?\n" + - "\vviewsSeries\x18\x1f \x01(\v2\x1d.Cast.WorkAnalysisViewsSeriesR\vviewsSeries\x12?\n" + - "\vlikesSeries\x18 \x01(\v2\x1d.Cast.WorkAnalysisLikesSeriesR\vlikesSeries\x12H\n" + - "\x0ecommentsSeries\x18! \x01(\v2 .Cast.WorkAnalysisCommentsSeriesR\x0ecommentsSeries\x12B\n" + - "\fsharesSeries\x18\" \x01(\v2\x1e.Cast.WorkAnalysisSharesSeriesR\fsharesSeries\x12E\n" + - "\x0ftopCitiesSeries\x18# \x01(\v2\x1b.Cast.WorkAnalysisTopCitiesR\x0ftopCitiesSeries\x12Q\n" + - "\x13mostActiveDaySeries\x18$ \x01(\v2\x1f.Cast.WorkAnalysisMostActiveDayR\x13mostActiveDaySeries\x12N\n" + - "\x12bestPostTimeSeries\x18% \x01(\v2\x1e.Cast.WorkAnalysisBestPostTimeR\x12bestPostTimeSeries\x12\x1c\n" + - "\tupdatedAt\x18& \x01(\tR\tupdatedAt\"\xf1\f\n" + - "\x19GetWorkAnalysisDetailResp\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12\x1a\n" + - "\bartistID\x18\x04 \x01(\tR\bartistID\x12 \n" + - "\vartistPhone\x18\x05 \x01(\tR\vartistPhone\x12\x1a\n" + - "\banalysis\x18\x06 \x01(\tR\banalysis\x12\x14\n" + - "\x05title\x18\a \x01(\tR\x05title\x12\x1e\n" + - "\n" + - "operatorID\x18\b \x01(\tR\n" + - "operatorID\x12\"\n" + - "\foperatorName\x18\t \x01(\tR\foperatorName\x12.\n" + - "\x12workAnalysisStatus\x18\n" + - " \x01(\rR\x12workAnalysisStatus\x12\x16\n" + - "\x06reason\x18\v \x01(\tR\x06reason\x12 \n" + - "\vcomfirmType\x18\f \x01(\x05R\vcomfirmType\x12\x12\n" + - "\x04cost\x18\r \x01(\rR\x04cost\x12\x1e\n" + - "\n" + - "submitTime\x18\x0e \x01(\tR\n" + - "submitTime\x12*\n" + - "\x10statusUpdateTime\x18\x0f \x01(\tR\x10statusUpdateTime\x12\x1e\n" + - "\n" + - "approvalID\x18\x10 \x01(\tR\n" + - "approvalID\x12\x16\n" + - "\x06pdfUrl\x18\x11 \x01(\tR\x06pdfUrl\x12,\n" + - "\x11mediaAccountCount\x18\x12 \x01(\x05R\x11mediaAccountCount\x12&\n" + - "\x0eworkVideoCount\x18\x13 \x01(\x05R\x0eworkVideoCount\x12&\n" + - "\x0eworkImageCount\x18\x14 \x01(\x05R\x0eworkImageCount\x12\x14\n" + - "\x05views\x18\x15 \x01(\x05R\x05views\x12\x14\n" + - "\x05likes\x18\x16 \x01(\x05R\x05likes\x12\x1a\n" + - "\bcomments\x18\x17 \x01(\x05R\bcomments\x12\x16\n" + - "\x06shares\x18\x18 \x01(\x05R\x06shares\x12\x1c\n" + - "\tfansCount\x18\x19 \x01(\x05R\tfansCount\x12\x1c\n" + - "\ttopCities\x18\x1a \x01(\x05R\ttopCities\x12$\n" + - "\rmostActiveDay\x18\x1b \x01(\x05R\rmostActiveDay\x12\"\n" + - "\fbestPostTime\x18\x1c \x01(\x05R\fbestPostTime\x12K\n" + - "\x13WorkAnalysisLogData\x18\x1d \x03(\v2\x19.Cast.WorkAnalysisLogInfoR\x13WorkAnalysisLogData\x12<\n" + - "\n" + - "fansSeries\x18\x1e \x01(\v2\x1c.Cast.WorkAnalysisFansSeriesR\n" + - "fansSeries\x12?\n" + - "\vviewsSeries\x18\x1f \x01(\v2\x1d.Cast.WorkAnalysisViewsSeriesR\vviewsSeries\x12?\n" + - "\vlikesSeries\x18 \x01(\v2\x1d.Cast.WorkAnalysisLikesSeriesR\vlikesSeries\x12H\n" + - "\x0ecommentsSeries\x18! \x01(\v2 .Cast.WorkAnalysisCommentsSeriesR\x0ecommentsSeries\x12B\n" + - "\fsharesSeries\x18\" \x01(\v2\x1e.Cast.WorkAnalysisSharesSeriesR\fsharesSeries\x12E\n" + - "\x0ftopCitiesSeries\x18# \x01(\v2\x1b.Cast.WorkAnalysisTopCitiesR\x0ftopCitiesSeries\x12Q\n" + - "\x13mostActiveDaySeries\x18$ \x01(\v2\x1f.Cast.WorkAnalysisMostActiveDayR\x13mostActiveDaySeries\x12N\n" + - "\x12bestPostTimeSeries\x18% \x01(\v2\x1e.Cast.WorkAnalysisBestPostTimeR\x12bestPostTimeSeries\x12-\n" + - "\x05extra\x18& \x01(\v2\x17.Cast.WorkAnalysisExtraR\x05extra\x12\x1c\n" + - "\tcreatedAt\x18' \x01(\tR\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18( \x01(\tR\tupdatedAt\"\xc9\x03\n" + - "\x13ListWorkAnalysisReq\x12\x1a\n" + - "\buuidList\x18\x01 \x03(\tR\buuidList\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x1c\n" + - "\tartistVal\x18\x03 \x01(\tR\tartistVal\x12\x16\n" + - "\x06status\x18\x04 \x01(\rR\x06status\x12 \n" + - "\vcomfirmType\x18\x05 \x01(\x05R\vcomfirmType\x124\n" + - "\x15statusUpdateTimeStart\x18\x06 \x01(\tR\x15statusUpdateTimeStart\x120\n" + - "\x13statusUpdateTimeEnd\x18\a \x01(\tR\x13statusUpdateTimeEnd\x12(\n" + - "\x0fsubmitStartTime\x18\b \x01(\tR\x0fsubmitStartTime\x12$\n" + - "\rsubmitEndTime\x18\t \x01(\tR\rsubmitEndTime\x12\x12\n" + - "\x04page\x18\n" + - " \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\v \x01(\x05R\bpageSize\x12\x1e\n" + - "\n" + - "statusList\x18\f \x03(\rR\n" + - "statusList\x12\x1e\n" + - "\n" + - "artistUuid\x18\r \x01(\tR\n" + - "artistUuid\"\xe4\x03\n" + - "\x10WorkAnalysisInfo\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x1e\n" + - "\n" + - "artistName\x18\x03 \x01(\tR\n" + - "artistName\x12\x1a\n" + - "\bartistID\x18\x04 \x01(\tR\bartistID\x12 \n" + - "\vartistPhone\x18\x05 \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "operatorID\x18\x06 \x01(\tR\n" + - "operatorID\x12\"\n" + - "\foperatorName\x18\a \x01(\tR\foperatorName\x12.\n" + - "\x12workAnalysisStatus\x18\b \x01(\rR\x12workAnalysisStatus\x12\x16\n" + - "\x06reason\x18\t \x01(\tR\x06reason\x12 \n" + - "\vcomfirmType\x18\n" + - " \x01(\x05R\vcomfirmType\x12\x1e\n" + - "\n" + - "submitTime\x18\v \x01(\tR\n" + - "submitTime\x12*\n" + - "\x10statusUpdateTime\x18\f \x01(\tR\x10statusUpdateTime\x12\x16\n" + - "\x06pdfUrl\x18\r \x01(\tR\x06pdfUrl\x12\x1e\n" + - "\n" + - "approvalID\x18\x0e \x01(\tR\n" + - "approvalID\x12\x14\n" + - "\x05title\x18\x0f \x01(\tR\x05title\"X\n" + - "\x14ListWorkAnalysisResp\x12*\n" + - "\x04data\x18\x01 \x03(\v2\x16.Cast.WorkAnalysisInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"+\n" + - "\x15DeleteWorkAnalysisReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"\xa5\x02\n" + - "\x11ArtistDataListReq\x12\x1c\n" + - "\tartistVal\x18\x01 \x01(\tR\tartistVal\x12\x1e\n" + - "\n" + - "bundleName\x18\x02 \x01(\tR\n" + - "bundleName\x12*\n" + - "\x10expiredTimeStart\x18\x03 \x01(\tR\x10expiredTimeStart\x12&\n" + - "\x0eexpiredTimeEnd\x18\x04 \x01(\tR\x0eexpiredTimeEnd\x12(\n" + - "\x0fsubmitTimeStart\x18\x05 \x01(\tR\x0fsubmitTimeStart\x12$\n" + - "\rsubmitTimeEnd\x18\x06 \x01(\tR\rsubmitTimeEnd\x12\x12\n" + - "\x04page\x18\a \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\b \x01(\x05R\bpageSize\"\xd4\x05\n" + - "\x12ArtistDataRespItem\x12\x1e\n" + - "\n" + - "artistName\x18\x01 \x01(\tR\n" + - "artistName\x12\x1e\n" + - "\n" + - "artistUuid\x18\x02 \x01(\tR\n" + - "artistUuid\x12\x16\n" + - "\x06subNum\x18\x03 \x01(\tR\x06subNum\x12 \n" + - "\vartistPhone\x18\x04 \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "bundleName\x18\x05 \x01(\tR\n" + - "bundleName\x12$\n" + - "\raccountNumber\x18\x06 \x01(\x05R\raccountNumber\x12:\n" + - "\x18accountConsumptionNumber\x18\a \x01(\x05R\x18accountConsumptionNumber\x12.\n" + - "\x12dataAnalysisNumber\x18\b \x01(\x05R\x12dataAnalysisNumber\x12D\n" + - "\x1ddataAnalysisConsumptionNumber\x18\t \x01(\x05R\x1ddataAnalysisConsumptionNumber\x12\x1e\n" + - "\n" + - "submitTime\x18\n" + - " \x01(\tR\n" + - "submitTime\x12\x1c\n" + - "\tfansCount\x18\v \x01(\x03R\tfansCount\x12\x1e\n" + - "\n" + - "viewsCount\x18\f \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\r \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\x0e \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\x0f \x01(\x03R\vsharesCount\x12$\n" + - "\rcastWorkCount\x18\x10 \x01(\x03R\rcastWorkCount\x12 \n" + - "\vexpiredTime\x18\x11 \x01(\tR\vexpiredTime\x12\x1e\n" + - "\n" + - "videoCount\x18\x12 \x01(\x03R\n" + - "videoCount\x12\x1e\n" + - "\n" + - "imageCount\x18\x13 \x01(\x03R\n" + - "imageCount\"X\n" + - "\x12ArtistDataListResp\x12,\n" + - "\x04data\x18\x01 \x03(\v2\x18.Cast.ArtistDataRespItemR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"\xac\x01\n" + - "\x10MediaDataListReq\x12\x1c\n" + - "\tartistVal\x18\x01 \x01(\tR\tartistVal\x12*\n" + - "\x10platformUserName\x18\x02 \x01(\tR\x10platformUserName\x12\x1e\n" + - "\n" + - "platformID\x18\x03 \x01(\rR\n" + - "platformID\x12\x12\n" + - "\x04page\x18\x04 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x05 \x01(\x05R\bpageSize\"\x85\x04\n" + - "\x11MediaDataListItem\x12\x1e\n" + - "\n" + - "artistName\x18\x01 \x01(\tR\n" + - "artistName\x12\x1e\n" + - "\n" + - "artistUuid\x18\x02 \x01(\tR\n" + - "artistUuid\x12\x16\n" + - "\x06subNum\x18\x03 \x01(\tR\x06subNum\x12 \n" + - "\vartistPhone\x18\x04 \x01(\tR\vartistPhone\x12*\n" + - "\x10platformUserName\x18\x05 \x01(\tR\x10platformUserName\x12\x1e\n" + - "\n" + - "platformID\x18\x06 \x01(\rR\n" + - "platformID\x12\x1e\n" + - "\n" + - "submitTime\x18\a \x01(\tR\n" + - "submitTime\x12\x1c\n" + - "\tfansCount\x18\b \x01(\x03R\tfansCount\x12\x1e\n" + - "\n" + - "viewsCount\x18\t \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\n" + - " \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\v \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\f \x01(\x03R\vsharesCount\x12$\n" + - "\rcastWorkCount\x18\r \x01(\x03R\rcastWorkCount\x12\x1e\n" + - "\n" + - "videoCount\x18\x0e \x01(\x03R\n" + - "videoCount\x12\x1e\n" + - "\n" + - "imageCount\x18\x0f \x01(\x03R\n" + - "imageCount\"V\n" + - "\x11MediaDataListResp\x12+\n" + - "\x04data\x18\x01 \x03(\v2\x17.Cast.MediaDataListItemR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"%\n" + - "\x0fDataOverviewReq\x12\x12\n" + - "\x04date\x18\x01 \x01(\tR\x04date\"\xc0\x06\n" + - "\x10DataOverviewResp\x12\"\n" + - "\faccountCount\x18\x01 \x01(\x03R\faccountCount\x12,\n" + - "\x11todayAccountCount\x18\x02 \x01(\x03R\x11todayAccountCount\x12\x1c\n" + - "\tfansCount\x18\x03 \x01(\x03R\tfansCount\x12&\n" + - "\x0etodayFansCount\x18\x04 \x01(\x03R\x0etodayFansCount\x12\x1e\n" + - "\n" + - "viewsCount\x18\x05 \x01(\x03R\n" + - "viewsCount\x12(\n" + - "\x0ftodayViewsCount\x18\x06 \x01(\x03R\x0ftodayViewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\a \x01(\x03R\n" + - "likesCount\x12(\n" + - "\x0ftodayLikesCount\x18\b \x01(\x03R\x0ftodayLikesCount\x12$\n" + - "\rcommentsCount\x18\t \x01(\x03R\rcommentsCount\x12.\n" + - "\x12todayCommentsCount\x18\n" + - " \x01(\x03R\x12todayCommentsCount\x12 \n" + - "\vsharesCount\x18\v \x01(\x03R\vsharesCount\x12*\n" + - "\x10todaySharesCount\x18\f \x01(\x03R\x10todaySharesCount\x12\x1e\n" + - "\n" + - "imageCount\x18\r \x01(\x03R\n" + - "imageCount\x12(\n" + - "\x0ftodayImageCount\x18\x0e \x01(\x03R\x0ftodayImageCount\x12\x1e\n" + - "\n" + - "videoCount\x18\x0f \x01(\x03R\n" + - "videoCount\x12(\n" + - "\x0ftodayVideoCount\x18\x10 \x01(\x03R\x0ftodayVideoCount\x12*\n" + - "\x10confirmDataCount\x18\x11 \x01(\x03R\x10confirmDataCount\x124\n" + - "\x15todayConfirmDataCount\x18\x12 \x01(\x03R\x15todayConfirmDataCount\x126\n" + - "\x16toBeConfirmedDataCount\x18\x13 \x01(\x03R\x16toBeConfirmedDataCount\x12.\n" + - "\x12approvingDataCount\x18\x14 \x01(\x03R\x12approvingDataCount\"\x90\x02\n" + - "\x16ArtistMetricsSeriesReq\x12\x1e\n" + - "\n" + - "artistUUID\x18\x01 \x01(\tR\n" + - "artistUUID\x12&\n" + - "\x0eperiodTypeFans\x18\x02 \x01(\rR\x0eperiodTypeFans\x12(\n" + - "\x0fperiodTypeViews\x18\x03 \x01(\rR\x0fperiodTypeViews\x12(\n" + - "\x0fperiodTypeLikes\x18\x04 \x01(\rR\x0fperiodTypeLikes\x12.\n" + - "\x12periodTypeComments\x18\x05 \x01(\rR\x12periodTypeComments\x12*\n" + - "\x10periodTypeShares\x18\x06 \x01(\rR\x10periodTypeShares\"\xf2\x03\n" + - "\x17ArtistMetricsSeriesResp\x12<\n" + - "\n" + - "fansSeries\x18\x01 \x01(\v2\x1c.Cast.WorkAnalysisFansSeriesR\n" + - "fansSeries\x12?\n" + - "\vviewsSeries\x18\x02 \x01(\v2\x1d.Cast.WorkAnalysisViewsSeriesR\vviewsSeries\x12?\n" + - "\vlikesSeries\x18\x03 \x01(\v2\x1d.Cast.WorkAnalysisLikesSeriesR\vlikesSeries\x12H\n" + - "\x0ecommentsSeries\x18\x04 \x01(\v2 .Cast.WorkAnalysisCommentsSeriesR\x0ecommentsSeries\x12B\n" + - "\fsharesSeries\x18\x05 \x01(\v2\x1e.Cast.WorkAnalysisSharesSeriesR\fsharesSeries\x12B\n" + - "\fbestPostTime\x18\x06 \x01(\v2\x1e.Cast.WorkAnalysisBestPostTimeR\fbestPostTime\x12E\n" + - "\rmostActiveDay\x18\a \x01(\v2\x1f.Cast.WorkAnalysisMostActiveDayR\rmostActiveDay\"q\n" + - "\x1bArtistMetricsDailyWindowReq\x12\x1e\n" + - "\n" + - "artistUUID\x18\x01 \x01(\tR\n" + - "artistUUID\x12\x1e\n" + - "\n" + - "platformID\x18\x02 \x01(\rR\n" + - "platformID\x12\x12\n" + - "\x04date\x18\x03 \x01(\x05R\x04date\"7\n" + - "\vSimplePoint\x12\x12\n" + - "\x04date\x18\x01 \x01(\x05R\x04date\x12\x14\n" + - "\x05value\x18\x02 \x01(\x03R\x05value\"G\n" + - "\x11BestPostTimePoint\x12\x1c\n" + - "\ttimePoint\x18\x01 \x01(\tR\ttimePoint\x12\x14\n" + - "\x05value\x18\x02 \x01(\x05R\x05value\"<\n" + - "\x12MostActiveDayPoint\x12\x10\n" + - "\x03day\x18\x01 \x01(\x05R\x03day\x12\x14\n" + - "\x05value\x18\x02 \x01(\x05R\x05value\"\x94\x04\n" + - "\x1cArtistMetricsDailyWindowResp\x12\x1c\n" + - "\tfansCount\x18\x01 \x01(\x03R\tfansCount\x12\x1e\n" + - "\n" + - "viewsCount\x18\x02 \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\x03 \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\x04 \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\x05 \x01(\x03R\vsharesCount\x12%\n" + - "\x04fans\x18\x06 \x03(\v2\x11.Cast.SimplePointR\x04fans\x12'\n" + - "\x05views\x18\a \x03(\v2\x11.Cast.SimplePointR\x05views\x12'\n" + - "\x05likes\x18\b \x03(\v2\x11.Cast.SimplePointR\x05likes\x12-\n" + - "\bcomments\x18\t \x03(\v2\x11.Cast.SimplePointR\bcomments\x12)\n" + - "\x06shares\x18\n" + - " \x03(\v2\x11.Cast.SimplePointR\x06shares\x12;\n" + - "\fbestPostTime\x18\v \x03(\v2\x17.Cast.BestPostTimePointR\fbestPostTime\x12>\n" + - "\rmostActiveDay\x18\f \x03(\v2\x18.Cast.MostActiveDayPointR\rmostActiveDay\"f\n" + - "\x14TobeConfirmedListReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\x12\n" + - "\x04page\x18\x02 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x03 \x01(\x05R\bpageSize\"\xff\x03\n" + - "\x11TobeConfirmedItem\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x14\n" + - "\x05title\x18\x02 \x01(\tR\x05title\x12\x18\n" + - "\acontent\x18\x03 \x01(\tR\acontent\x12\"\n" + - "\fworkCategory\x18\x04 \x01(\x05R\fworkCategory\x12\x1e\n" + - "\n" + - "updateTime\x18\x05 \x01(\tR\n" + - "updateTime\x12\x1e\n" + - "\n" + - "workStatus\x18\x06 \x01(\x05R\n" + - "workStatus\x12 \n" + - "\vplatformIds\x18\a \x01(\tR\vplatformIds\x12\x1e\n" + - "\n" + - "artistName\x18\b \x01(\tR\n" + - "artistName\x12\x1e\n" + - "\n" + - "artistUuid\x18\t \x01(\tR\n" + - "artistUuid\x12(\n" + - "\x0fmediaAccUserIds\x18\n" + - " \x01(\tR\x0fmediaAccUserIds\x12\x1e\n" + - "\n" + - "mediaNames\x18\v \x01(\tR\n" + - "mediaNames\x12 \n" + - "\vconfirmedAt\x18\f \x01(\x03R\vconfirmedAt\x12\x1a\n" + - "\bitemType\x18\r \x01(\x05R\bitemType\x12\x1c\n" + - "\tcreatedAt\x18\x0e \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x0f \x01(\x05R\tupdatedAt\x12\x1c\n" + - "\tdeletedAt\x18\x10 \x01(\x04R\tdeletedAt\"Z\n" + - "\x15TobeConfirmedListResp\x12+\n" + - "\x04data\x18\x01 \x03(\v2\x17.Cast.TobeConfirmedItemR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"U\n" + - "\x1fUpdateWorkAnalysisApprovalIDReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "approvalID\x18\x02 \x01(\tR\n" + - "approvalID\"\xe7\x04\n" + - "\x15MediaMetricsDailyItem\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x02 \x01(\tR\n" + - "artistUuid\x12&\n" + - "\x0emediaAccUserID\x18\x03 \x01(\tR\x0emediaAccUserID\x12\x1c\n" + - "\tmediaName\x18\x04 \x01(\tR\tmediaName\x12\x1e\n" + - "\n" + - "artistName\x18\x05 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x06 \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "platformID\x18\a \x01(\rR\n" + - "platformID\x12\x12\n" + - "\x04date\x18\b \x01(\x05R\x04date\x12\x1c\n" + - "\tfansCount\x18\t \x01(\x03R\tfansCount\x12\x1e\n" + - "\n" + - "viewsCount\x18\n" + - " \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\v \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\f \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\r \x01(\x03R\vsharesCount\x12\x1e\n" + - "\n" + - "videoCount\x18\x0e \x01(\x03R\n" + - "videoCount\x12\x1e\n" + - "\n" + - "imageCount\x18\x0f \x01(\x03R\n" + - "imageCount\x12\x1e\n" + - "\n" + - "profileKey\x18\x10 \x01(\tR\n" + - "profileKey\x12\x1c\n" + - "\tisSuccess\x18\x11 \x01(\rR\tisSuccess\x12\x1e\n" + - "\n" + - "failReason\x18\x12 \x01(\tR\n" + - "failReason\x12\x1a\n" + - "\bfailType\x18\x13 \x01(\rR\bfailType\"R\n" + - "\x1fUpsertMediaMetricsDailyBatchReq\x12/\n" + - "\x04data\x18\x01 \x03(\v2\x1b.Cast.MediaMetricsDailyItemR\x04data\"<\n" + - " UpsertMediaMetricsDailyBatchResp\x12\x18\n" + - "\asuccess\x18\x01 \x01(\bR\asuccess\"\xcc\x04\n" + - "\x14WorkMetricsDailyItem\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1a\n" + - "\bworkUuid\x18\x02 \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x03 \x01(\tR\n" + - "artistUuid\x12&\n" + - "\x0emediaAccUserID\x18\x04 \x01(\tR\x0emediaAccUserID\x12\x1c\n" + - "\tmediaName\x18\x05 \x01(\tR\tmediaName\x12\x1e\n" + - "\n" + - "artistName\x18\x06 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\a \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "platformID\x18\b \x01(\rR\n" + - "platformID\x12\x12\n" + - "\x04date\x18\t \x01(\x05R\x04date\x12\x1e\n" + - "\n" + - "viewsCount\x18\n" + - " \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\v \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\f \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\r \x01(\x03R\vsharesCount\x12&\n" + - "\x0epublishMediaID\x18\x0e \x01(\tR\x0epublishMediaID\x12\x1e\n" + - "\n" + - "profileKey\x18\x0f \x01(\tR\n" + - "profileKey\x12\x1c\n" + - "\tisSuccess\x18\x10 \x01(\rR\tisSuccess\x12\x1e\n" + - "\n" + - "failReason\x18\x11 \x01(\tR\n" + - "failReason\x12\x1a\n" + - "\bfailType\x18\x12 \x01(\rR\bfailType\"P\n" + - "\x1eUpsertWorkMetricsDailyBatchReq\x12.\n" + - "\x04data\x18\x01 \x03(\v2\x1a.Cast.WorkMetricsDailyItemR\x04data\";\n" + - "\x1fUpsertWorkMetricsDailyBatchResp\x12\x18\n" + - "\asuccess\x18\x01 \x01(\bR\asuccess\"\x9a\x01\n" + - "\x18GetArtistAyrShareInfoReq\x12\x1e\n" + - "\n" + - "artistUuid\x18\x01 \x01(\tR\n" + - "artistUuid\x12\x16\n" + - "\x06subNum\x18\x02 \x01(\tR\x06subNum\x12\x16\n" + - "\x06status\x18\x03 \x01(\x05R\x06status\x12\x12\n" + - "\x04page\x18\x04 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x05 \x01(\x05R\bpageSize\"\x9a\x02\n" + - "\x12ArtistAyrShareInfo\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x02 \x01(\tR\n" + - "artistUuid\x12\x16\n" + - "\x06subNum\x18\x03 \x01(\tR\x06subNum\x12\x14\n" + - "\x05refId\x18\x04 \x01(\tR\x05refId\x12\x1e\n" + - "\n" + - "profileKey\x18\x05 \x01(\tR\n" + - "profileKey\x12.\n" + - "\x12ayrShareCreateTime\x18\x06 \x01(\tR\x12ayrShareCreateTime\x12\x16\n" + - "\x06status\x18\a \x01(\x05R\x06status\x12\x1c\n" + - "\tcreatedAt\x18\b \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\t \x01(\x05R\tupdatedAt\"_\n" + - "\x19GetArtistAyrShareInfoResp\x12,\n" + - "\x04data\x18\x01 \x03(\v2\x18.Cast.ArtistAyrShareInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"\x9b\x01\n" + - "\x17ListWorkPlatformInfoReq\x12 \n" + - "\vplatformIDs\x18\x01 \x03(\rR\vplatformIDs\x12.\n" + - "\x12publishMediaStatus\x18\x02 \x01(\x05R\x12publishMediaStatus\x12\x12\n" + - "\x04page\x18\x03 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x04 \x01(\x05R\bpageSize\"\x88\x04\n" + - "\x10WorkPlatformInfo\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1a\n" + - "\bworkUuid\x18\x02 \x01(\tR\bworkUuid\x12 \n" + - "\vmediaUserID\x18\x03 \x01(\tR\vmediaUserID\x12\x1e\n" + - "\n" + - "platformID\x18\x04 \x01(\rR\n" + - "platformID\x12 \n" + - "\vpublishResp\x18\x05 \x01(\tR\vpublishResp\x12&\n" + - "\x0epublishMediaID\x18\x06 \x01(\tR\x0epublishMediaID\x12.\n" + - "\x12publishMediaStatus\x18\a \x01(\x05R\x12publishMediaStatus\x12\x16\n" + - "\x06remark\x18\b \x01(\tR\x06remark\x12\x1c\n" + - "\tcreatedAt\x18\t \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\n" + - " \x01(\x05R\tupdatedAt\x12\x1e\n" + - "\n" + - "artistUuid\x18\v \x01(\tR\n" + - "artistUuid\x12*\n" + - "\x10platformUserName\x18\f \x01(\tR\x10platformUserName\x12&\n" + - "\x0eplatformUserID\x18\r \x01(\tR\x0eplatformUserID\x12\x1e\n" + - "\n" + - "artistName\x18\x0e \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x0f \x01(\tR\vartistPhone\"\\\n" + - "\x18ListWorkPlatformInfoResp\x12*\n" + - "\x04data\x18\x01 \x03(\v2\x16.Cast.WorkPlatformInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"\x98\x01\n" + - "\x18ListMediaMetricsDailyReq\x12\x1c\n" + - "\tisSuccess\x18\x01 \x01(\rR\tisSuccess\x12\x1a\n" + - "\bfailType\x18\x02 \x01(\rR\bfailType\x12\x12\n" + - "\x04page\x18\x03 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x04 \x01(\x05R\bpageSize\x12\x12\n" + - "\x04date\x18\x05 \x01(\x05R\x04date\"\xa3\x05\n" + - "\x15MediaMetricsDailyInfo\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x02 \x01(\tR\n" + - "artistUuid\x12&\n" + - "\x0emediaAccUserID\x18\x03 \x01(\tR\x0emediaAccUserID\x12\x1c\n" + - "\tmediaName\x18\x04 \x01(\tR\tmediaName\x12\x1e\n" + - "\n" + - "artistName\x18\x05 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\x06 \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "platformID\x18\a \x01(\rR\n" + - "platformID\x12\x12\n" + - "\x04date\x18\b \x01(\x05R\x04date\x12\x1c\n" + - "\tfansCount\x18\t \x01(\x03R\tfansCount\x12\x1e\n" + - "\n" + - "viewsCount\x18\n" + - " \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\v \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\f \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\r \x01(\x03R\vsharesCount\x12\x1e\n" + - "\n" + - "videoCount\x18\x0e \x01(\x03R\n" + - "videoCount\x12\x1e\n" + - "\n" + - "imageCount\x18\x0f \x01(\x03R\n" + - "imageCount\x12\x1e\n" + - "\n" + - "profileKey\x18\x10 \x01(\tR\n" + - "profileKey\x12\x1c\n" + - "\tisSuccess\x18\x11 \x01(\rR\tisSuccess\x12\x1e\n" + - "\n" + - "failReason\x18\x12 \x01(\tR\n" + - "failReason\x12\x1a\n" + - "\bfailType\x18\x13 \x01(\rR\bfailType\x12\x1c\n" + - "\tcreatedAt\x18\x14 \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x15 \x01(\x05R\tupdatedAt\"b\n" + - "\x19ListMediaMetricsDailyResp\x12/\n" + - "\x04data\x18\x01 \x03(\v2\x1b.Cast.MediaMetricsDailyInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"\x97\x01\n" + - "\x17ListWorkMetricsDailyReq\x12\x1c\n" + - "\tisSuccess\x18\x01 \x01(\rR\tisSuccess\x12\x1a\n" + - "\bfailType\x18\x02 \x01(\rR\bfailType\x12\x12\n" + - "\x04page\x18\x03 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x04 \x01(\x05R\bpageSize\x12\x12\n" + - "\x04date\x18\x05 \x01(\x05R\x04date\"\x88\x05\n" + - "\x14WorkMetricsDailyInfo\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x1a\n" + - "\bworkUuid\x18\x02 \x01(\tR\bworkUuid\x12\x1e\n" + - "\n" + - "artistUuid\x18\x03 \x01(\tR\n" + - "artistUuid\x12&\n" + - "\x0emediaAccUserID\x18\x04 \x01(\tR\x0emediaAccUserID\x12\x1c\n" + - "\tmediaName\x18\x05 \x01(\tR\tmediaName\x12\x1e\n" + - "\n" + - "artistName\x18\x06 \x01(\tR\n" + - "artistName\x12 \n" + - "\vartistPhone\x18\a \x01(\tR\vartistPhone\x12\x1e\n" + - "\n" + - "platformID\x18\b \x01(\rR\n" + - "platformID\x12\x12\n" + - "\x04date\x18\t \x01(\x05R\x04date\x12\x1e\n" + - "\n" + - "viewsCount\x18\n" + - " \x01(\x03R\n" + - "viewsCount\x12\x1e\n" + - "\n" + - "likesCount\x18\v \x01(\x03R\n" + - "likesCount\x12$\n" + - "\rcommentsCount\x18\f \x01(\x03R\rcommentsCount\x12 \n" + - "\vsharesCount\x18\r \x01(\x03R\vsharesCount\x12&\n" + - "\x0epublishMediaID\x18\x0e \x01(\tR\x0epublishMediaID\x12\x1e\n" + - "\n" + - "profileKey\x18\x0f \x01(\tR\n" + - "profileKey\x12\x1c\n" + - "\tisSuccess\x18\x10 \x01(\rR\tisSuccess\x12\x1e\n" + - "\n" + - "failReason\x18\x11 \x01(\tR\n" + - "failReason\x12\x1a\n" + - "\bfailType\x18\x12 \x01(\rR\bfailType\x12\x1c\n" + - "\tcreatedAt\x18\x13 \x01(\x05R\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\x14 \x01(\x05R\tupdatedAt\"`\n" + - "\x18ListWorkMetricsDailyResp\x12.\n" + - "\x04data\x18\x01 \x03(\v2\x1a.Cast.WorkMetricsDailyInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\"\xad\x01\n" + - "\x11UpsertTaskListReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x16\n" + - "\x06action\x18\x02 \x01(\tR\x06action\x12\x10\n" + - "\x03url\x18\x03 \x01(\tR\x03url\x12\x16\n" + - "\x06status\x18\x04 \x01(\rR\x06status\x12\x1e\n" + - "\n" + - "operatorID\x18\x05 \x01(\tR\n" + - "operatorID\x12\"\n" + - "\foperatorName\x18\x06 \x01(\tR\foperatorName\":\n" + - "\x12UpsertTaskListResp\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x10\n" + - "\x03msg\x18\x02 \x01(\tR\x03msg\"$\n" + - "\x0eGetTaskListReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"\xe4\x01\n" + - "\fTaskListInfo\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\x12\x16\n" + - "\x06action\x18\x02 \x01(\tR\x06action\x12\x10\n" + - "\x03url\x18\x03 \x01(\tR\x03url\x12\x16\n" + - "\x06status\x18\x04 \x01(\rR\x06status\x12\x1e\n" + - "\n" + - "operatorID\x18\x05 \x01(\tR\n" + - "operatorID\x12\"\n" + - "\foperatorName\x18\x06 \x01(\tR\foperatorName\x12\x1c\n" + - "\tcreatedAt\x18\a \x01(\tR\tcreatedAt\x12\x1c\n" + - "\tupdatedAt\x18\b \x01(\tR\tupdatedAt\"K\n" + - "\x0fGetTaskListResp\x12&\n" + - "\x04data\x18\x01 \x01(\v2\x12.Cast.TaskListInfoR\x04data\x12\x10\n" + - "\x03msg\x18\x02 \x01(\tR\x03msg\"\x91\x01\n" + - "\x0fListTaskListReq\x12\x16\n" + - "\x06action\x18\x01 \x01(\tR\x06action\x12\x16\n" + - "\x06status\x18\x02 \x01(\rR\x06status\x12\x1e\n" + - "\n" + - "operatorID\x18\x03 \x01(\tR\n" + - "operatorID\x12\x12\n" + - "\x04page\x18\x04 \x01(\x05R\x04page\x12\x1a\n" + - "\bpageSize\x18\x05 \x01(\x05R\bpageSize\"b\n" + - "\x10ListTaskListResp\x12&\n" + - "\x04data\x18\x01 \x03(\v2\x12.Cast.TaskListInfoR\x04data\x12\x14\n" + - "\x05count\x18\x02 \x01(\x03R\x05count\x12\x10\n" + - "\x03msg\x18\x03 \x01(\tR\x03msg\"'\n" + - "\x11DeleteTaskListReq\x12\x12\n" + - "\x04uuid\x18\x01 \x01(\tR\x04uuid\"5\n" + - "\x1fCalculateMediaMetricsByWorksReq\x12\x12\n" + - "\x04date\x18\x01 \x01(\x05R\x04date\"<\n" + - " CalculateMediaMetricsByWorksResp\x12\x18\n" + - "\asuccess\x18\x01 \x01(\bR\asuccess*T\n" + - "\x0ePlatformIDENUM\x12\v\n" + - "\aUNKNOWN\x10\x00\x12\n" + - "\n" + - "\x06TIKTOK\x10\x01\x12\v\n" + - "\aYOUTUBE\x10\x02\x12\a\n" + - "\x03INS\x10\x03\x12\x06\n" + - "\x02DM\x10\x04\x12\v\n" + - "\aBULESKY\x10\x05*9\n" + - "\x0eAuthStatusENUM\x12\x0f\n" + - "\vUNKNOWNAuth\x10\x00\x12\n" + - "\n" + - "\x06AuthOk\x10\x01\x12\n" + - "\n" + - "\x06AuthNo\x10\x02*\x81\x01\n" + - "\x0eWorkActionENUM\x12\r\n" + - "\tNO_ACTION\x10\x00\x12\v\n" + - "\aCONFIRM\x10\x01\x12\f\n" + - "\bAPPROVAL\x10\x02\x12\x11\n" + - "\rAPPROVAL_PASS\x10\x03\x12\x13\n" + - "\x0fAPPROVAL_REJECT\x10\x04\x12\x13\n" + - "\x0fAPPROVAL_DELETE\x10\x05\x12\b\n" + - "\x04READ\x10\x06*V\n" + - "\x0fAutoPublishENUM\x12\x16\n" + - "\x12AutoPublish_UNKONW\x10\x00\x12\x14\n" + - "\x10AutoPublish_TRUE\x10\x01\x12\x15\n" + - "\x11AutoPublish_FALSE\x10\x02*\xa6\x01\n" + - "\x11PublishStatusENUM\x12\x19\n" + - "\x15PublishMediaStatus_NO\x10\x00\x12\x1a\n" + - "\x16PublishMediaStatus_ING\x10\x01\x12\x1b\n" + - "\x17PublishMediaStatus_DONE\x10\x02\x12\x1b\n" + - "\x17PublishMediaStatus_FAIL\x10\x03\x12 \n" + - "\x1cPublishMediaStatus_EXCEPTION\x10\x04*e\n" + - "\x0fConfirmFailENUM\x12\x16\n" + - "\x12ConfirmFailENUM_NO\x10\x00\x12\x1d\n" + - "\x19ConfirmFailENUM_NOTENOUGH\x10\x01\x12\x1b\n" + - "\x17ConfirmFailENUM_EXPIRED\x10\x02*Y\n" + - "\fCategoryENUM\x12\x14\n" + - "\x10UNKNOWN_CATEGORY\x10\x00\x12\t\n" + - "\x05TITLE\x10\x01\x12\v\n" + - "\aCONTENT\x10\x02\x12\t\n" + - "\x05IMAGE\x10\x03\x12\x10\n" + - "\fLONG_CONTENT\x10\x042\xe7'\n" + - "\x04Cast\x12B\n" + - "\rMediaUserList\x12\x16.Cast.MediaUserListReq\x1a\x17.Cast.MediaUserListResp\"\x00\x12Q\n" + - "\x12UpdateMediaAccount\x12\x1b.Cast.UpdateMediaAccountReq\x1a\x1c.Cast.UpdateMediaAccountResp\"\x00\x12B\n" + - "\rUnbindManager\x12\x16.Cast.UnbindManagerReq\x1a\x17.Cast.UnbindManagerResp\"\x00\x12=\n" + - "\vBindManager\x12\x14.Cast.BindManagerReq\x1a\x16.google.protobuf.Empty\"\x00\x12H\n" + - "\x0fUpdateWorkImage\x12\x18.Cast.UpdateWorkImageReq\x1a\x19.Cast.UpdateWorkImageResp\"\x00\x12H\n" + - "\x0fUpdateWorkVideo\x12\x18.Cast.UpdateWorkVideoReq\x1a\x19.Cast.UpdateWorkVideoResp\"\x00\x126\n" + - "\tMediaInfo\x12\x12.Cast.MediaInfoReq\x1a\x13.Cast.MediaInfoResp\"\x00\x12T\n" + - "\x13MediaInfoByPlatform\x12\x1c.Cast.MediaInfoByPlatformReq\x1a\x1d.Cast.MediaInfoByPlatformResp\"\x00\x123\n" + - "\bWorkList\x12\x11.Cast.WorkListReq\x1a\x12.Cast.WorkListResp\"\x00\x129\n" + - "\n" + - "WorkDetail\x12\x13.Cast.WorkDetailReq\x1a\x14.Cast.WorkDetailResp\"\x00\x12?\n" + - "\fUpdateStatus\x12\x15.Cast.UpdateStatusReq\x1a\x16.google.protobuf.Empty\"\x00\x12B\n" + - "\rMediaAccounts\x12\x16.Cast.MediaAccountsReq\x1a\x17.Cast.MediaAccountsResp\"\x00\x129\n" + - "\n" + - "MediaWorks\x12\x13.Cast.MediaWorksReq\x1a\x14.Cast.MediaWorksResp\"\x00\x120\n" + - "\aPublish\x12\x10.Cast.PublishReq\x1a\x11.Cast.PublishResp\"\x00\x126\n" + - "\tRePublish\x12\x12.Cast.RePublishReq\x1a\x13.Cast.RePublishResp\"\x00\x125\n" + - "\aDelWork\x12\x10.Cast.DelWorkReq\x1a\x16.google.protobuf.Empty\"\x00\x123\n" + - "\bWorkInfo\x12\x11.Cast.WorkInfoReq\x1a\x12.Cast.WorkInfoResp\"\x00\x129\n" + - "\n" + - "ArtistInfo\x12\x13.Cast.ArtistInfoReq\x1a\x14.Cast.ArtistInfoResp\"\x00\x12H\n" + - "\x0fImportWorkBatch\x12\x18.Cast.ImportWorkBatchReq\x1a\x19.Cast.ImportWorkBatchResp\"\x00\x12]\n" + - "\x16UpdateWorkPlatformInfo\x12\x1f.Cast.UpdateWorkPlatformInfoReq\x1a .Cast.UpdateWorkPlatformInfoResp\"\x00\x12O\n" + - "\x14UpdateWorkPublishLog\x12\x1d.Cast.UpdateWorkPublishLogReq\x1a\x16.google.protobuf.Empty\"\x00\x12H\n" + - "\x0fRefreshWorkList\x12\x18.Cast.RefreshWorkListReq\x1a\x19.Cast.RefreshWorkListResp\"\x00\x12?\n" + - "\fOAuthAccount\x12\x15.Cast.OAuthAccountReq\x1a\x16.Cast.OAuthAccountResp\"\x00\x12E\n" + - "\x0eOAuthAccountV2\x12\x17.Cast.OAuthAccountV2Req\x1a\x18.Cast.OAuthAccountV2Resp\"\x00\x12K\n" + - "\x10OAuthCodeToToken\x12\x19.Cast.OAuthCodeToTokenReq\x1a\x1a.Cast.OAuthCodeToTokenResp\"\x00\x12=\n" + - "\vUpdateOAuth\x12\x14.Cast.UpdateOAuthReq\x1a\x16.google.protobuf.Empty\"\x00\x12?\n" + - "\fRefreshToken\x12\x15.Cast.RefreshTokenReq\x1a\x16.Cast.RefreshTokenResp\"\x00\x12K\n" + - "\x10PublishMediaInfo\x12\x19.Cast.PublishMediaInfoReq\x1a\x1a.Cast.PublishMediaInfoResp\"\x00\x121\n" + - "\x05Tools\x12\x0e.Cast.ToolsReq\x1a\x16.google.protobuf.Empty\"\x00\x12N\n" + - "\x11UpdateVideoScript\x12\x1a.Cast.UpdateVideoScriptReq\x1a\x1b.Cast.UpdateVideoScriptResp\"\x00\x12E\n" + - "\x0eGetVideoScript\x12\x17.Cast.GetVideoScriptReq\x1a\x18.Cast.GetVideoScriptResp\"\x00\x12K\n" + - "\x10ListVideoScripts\x12\x19.Cast.ListVideoScriptsReq\x1a\x1a.Cast.ListVideoScriptsResp\"\x00\x12I\n" + - "\x11DeleteVideoScript\x12\x1a.Cast.DeleteVideoScriptReq\x1a\x16.google.protobuf.Empty\"\x00\x12]\n" + - "\x16UpdateVideoScriptBatch\x12\x1f.Cast.UpdateVideoScriptBatchReq\x1a .Cast.UpdateVideoScriptBatchResp\"\x00\x12K\n" + - "\x12UpdateScriptStatus\x12\x1b.Cast.UpdateScriptStatusReq\x1a\x16.google.protobuf.Empty\"\x00\x126\n" + - "\tGetLayout\x12\x12.Cast.GetLayoutReq\x1a\x13.Cast.GetLayoutResp\"\x00\x129\n" + - "\tSetLayout\x12\x12.Cast.SetLayoutReq\x1a\x16.google.protobuf.Empty\"\x00\x12?\n" + - "\fUpdatePrompt\x12\x15.Cast.UpdatePromptReq\x1a\x16.google.protobuf.Empty\"\x00\x12?\n" + - "\fDeletePrompt\x12\x15.Cast.DeletePromptReq\x1a\x16.google.protobuf.Empty\"\x00\x126\n" + - "\tGetPrompt\x12\x12.Cast.GetPromptReq\x1a\x13.Cast.GetPromptResp\"\x00\x12<\n" + - "\vListPrompts\x12\x14.Cast.ListPromptsReq\x1a\x15.Cast.ListPromptsResp\"\x00\x12N\n" + - "\x11UpdatePromptBatch\x12\x1a.Cast.UpdatePromptBatchReq\x1a\x1b.Cast.UpdatePromptBatchResp\"\x00\x12?\n" + - "\fUpdateArtist\x12\x15.Cast.UpdateArtistReq\x1a\x16.Cast.UpdateArtistResp\"\x00\x126\n" + - "\tGetArtist\x12\x12.Cast.GetArtistReq\x1a\x13.Cast.GetArtistResp\"\x00\x12Q\n" + - "\x12CreateWorkAnalysis\x12\x1b.Cast.CreateWorkAnalysisReq\x1a\x1c.Cast.CreateWorkAnalysisResp\"\x00\x12K\n" + - "\x12UpdateWorkAnalysis\x12\x1b.Cast.UpdateWorkAnalysisReq\x1a\x16.google.protobuf.Empty\"\x00\x12W\n" + - "\x18UpdateWorkAnalysisStatus\x12!.Cast.UpdateWorkAnalysisStatusReq\x1a\x16.google.protobuf.Empty\"\x00\x12T\n" + - "\x0fGetWorkAnalysis\x12\x1e.Cast.GetWorkAnalysisDetailReq\x1a\x1f.Cast.GetWorkAnalysisDetailResp\"\x00\x12T\n" + - "\x15GetLatestWorkAnalysis\x12\x1e.Cast.GetLatestWorkAnalysisReq\x1a\x19.Cast.GetWorkAnalysisResp\"\x00\x12K\n" + - "\x10ListWorkAnalysis\x12\x19.Cast.ListWorkAnalysisReq\x1a\x1a.Cast.ListWorkAnalysisResp\"\x00\x12K\n" + - "\x12DeleteWorkAnalysis\x12\x1b.Cast.DeleteWorkAnalysisReq\x1a\x16.google.protobuf.Empty\"\x00\x12_\n" + - "\x1cUpdateWorkAnalysisApprovalID\x12%.Cast.UpdateWorkAnalysisApprovalIDReq\x1a\x16.google.protobuf.Empty\"\x00\x12E\n" + - "\x0eArtistDataList\x12\x17.Cast.ArtistDataListReq\x1a\x18.Cast.ArtistDataListResp\"\x00\x12B\n" + - "\rMediaDataList\x12\x16.Cast.MediaDataListReq\x1a\x17.Cast.MediaDataListResp\"\x00\x12?\n" + - "\fDataOverview\x12\x15.Cast.DataOverviewReq\x1a\x16.Cast.DataOverviewResp\"\x00\x12T\n" + - "\x13ArtistMetricsSeries\x12\x1c.Cast.ArtistMetricsSeriesReq\x1a\x1d.Cast.ArtistMetricsSeriesResp\"\x00\x12c\n" + - "\x18ArtistMetricsDailyWindow\x12!.Cast.ArtistMetricsDailyWindowReq\x1a\".Cast.ArtistMetricsDailyWindowResp\"\x00\x12N\n" + - "\x11TobeConfirmedList\x12\x1a.Cast.TobeConfirmedListReq\x1a\x1b.Cast.TobeConfirmedListResp\"\x00\x12o\n" + - "\x1cUpsertMediaMetricsDailyBatch\x12%.Cast.UpsertMediaMetricsDailyBatchReq\x1a&.Cast.UpsertMediaMetricsDailyBatchResp\"\x00\x12l\n" + - "\x1bUpsertWorkMetricsDailyBatch\x12$.Cast.UpsertWorkMetricsDailyBatchReq\x1a%.Cast.UpsertWorkMetricsDailyBatchResp\"\x00\x12Z\n" + - "\x15ListMediaMetricsDaily\x12\x1e.Cast.ListMediaMetricsDailyReq\x1a\x1f.Cast.ListMediaMetricsDailyResp\"\x00\x12W\n" + - "\x14ListWorkMetricsDaily\x12\x1d.Cast.ListWorkMetricsDailyReq\x1a\x1e.Cast.ListWorkMetricsDailyResp\"\x00\x12o\n" + - "\x1cCalculateMediaMetricsByWorks\x12%.Cast.CalculateMediaMetricsByWorksReq\x1a&.Cast.CalculateMediaMetricsByWorksResp\"\x00\x12Z\n" + - "\x15GetArtistAyrShareInfo\x12\x1e.Cast.GetArtistAyrShareInfoReq\x1a\x1f.Cast.GetArtistAyrShareInfoResp\"\x00\x12W\n" + - "\x14ListWorkPlatformInfo\x12\x1d.Cast.ListWorkPlatformInfoReq\x1a\x1e.Cast.ListWorkPlatformInfoResp\"\x00\x12E\n" + - "\x0eUpsertTaskList\x12\x17.Cast.UpsertTaskListReq\x1a\x18.Cast.UpsertTaskListResp\"\x00\x12<\n" + - "\vGetTaskList\x12\x14.Cast.GetTaskListReq\x1a\x15.Cast.GetTaskListResp\"\x00\x12?\n" + - "\fListTaskList\x12\x15.Cast.ListTaskListReq\x1a\x16.Cast.ListTaskListResp\"\x00\x12C\n" + - "\x0eDeleteTaskList\x12\x17.Cast.DeleteTaskListReq\x1a\x16.google.protobuf.Empty\"\x00B\rZ\v./cast;castb\x06proto3" +var file_pb_fiee_cast_proto_rawDesc = []byte{ + 0x0a, 0x12, 0x70, 0x62, 0x2f, 0x66, 0x69, 0x65, 0x65, 0x2f, 0x63, 0x61, 0x73, 0x74, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x04, 0x43, 0x61, 0x73, 0x74, 0x1a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x2f, 0x77, 0x72, 0x61, 0x70, 0x70, 0x65, 0x72, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x1a, 0x17, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, + 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x3c, + 0x0a, 0x06, 0x41, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x41, 0x73, 0x49, 0x44, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x41, 0x73, 0x49, 0x44, 0x22, 0xe8, 0x03, 0x0a, + 0x10, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, + 0x1e, 0x0a, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x12, + 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, + 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x44, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, + 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x75, 0x74, + 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x61, 0x75, 0x74, + 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x65, 0x65, + 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6e, 0x65, + 0x65, 0x64, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x65, 0x64, 0x41, + 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x6e, 0x65, 0x65, + 0x64, 0x41, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0xed, 0x05, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, + 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, + 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, + 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x61, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x75, 0x74, + 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x61, 0x75, 0x74, + 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x65, 0x6e, 0x64, 0x69, + 0x6e, 0x67, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x11, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, + 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x12, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, + 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x12, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, + 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x10, 0x70, 0x65, 0x6e, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x50, 0x6f, 0x73, + 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x75, 0x70, + 0x6c, 0x6f, 0x61, 0x64, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x2c, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x54, + 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x72, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x24, 0x0a, + 0x06, 0x61, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x61, 0x73, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, + 0x4e, 0x75, 0x6d, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0x52, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, + 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xd1, 0x03, 0x0a, 0x15, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, + 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, + 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, + 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, + 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, + 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, + 0x44, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x3e, 0x0a, 0x10, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x41, 0x0a, 0x11, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, + 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x11, 0x6f, 0x6c, + 0x64, 0x42, 0x69, 0x6e, 0x64, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x6f, 0x6c, 0x64, 0x42, 0x69, 0x6e, 0x64, 0x41, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x88, 0x01, 0x0a, 0x0e, 0x42, 0x69, 0x6e, + 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x6e, 0x61, 0x67, + 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, + 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x61, 0x6e, + 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x22, 0xc5, 0x07, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, + 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, + 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, + 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x36, + 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x06, 0x20, + 0x03, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x31, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x32, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, + 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x33, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x12, 0x3b, 0x0a, + 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, + 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0e, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, + 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, + 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x11, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x69, + 0x6e, 0x65, 0x4e, 0x6f, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x69, 0x6e, 0x65, + 0x4e, 0x6f, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x13, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, + 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x17, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x70, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x18, 0x18, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, + 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x22, 0x31, 0x0a, 0x13, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0xbf, + 0x01, 0x0a, 0x0d, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x12, 0x24, 0x0a, 0x0d, 0x66, 0x6f, 0x72, 0x62, 0x69, 0x64, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x66, 0x6f, 0x72, 0x62, 0x69, 0x64, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, + 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x63, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x61, 0x6e, 0x4a, 0x6f, 0x69, + 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x61, 0x6e, 0x4a, 0x6f, 0x69, 0x6e, + 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x6e, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x63, 0x61, 0x6e, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x63, 0x61, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x0a, 0x63, 0x61, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, + 0x69, 0x73, 0x41, 0x49, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x69, 0x73, 0x41, 0x49, + 0x22, 0xca, 0x07, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, + 0x55, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, + 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x12, + 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c, 0x0a, + 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, + 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x0b, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0e, + 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x31, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, + 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x32, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, 0x12, 0x3b, 0x0a, + 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, + 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, + 0x43, 0x6f, 0x64, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4d, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x10, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x4d, 0x73, 0x12, 0x37, 0x0a, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x45, 0x4e, 0x55, 0x4d, 0x52, + 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x1e, 0x0a, 0x0a, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x16, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, + 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x35, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x22, 0x31, 0x0a, + 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, + 0x22, 0x90, 0x01, 0x0a, 0x0c, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, + 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x22, 0x38, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x6e, 0x0a, + 0x16, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, + 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x22, 0x42, 0x0a, + 0x17, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, + 0x6f, 0x22, 0xd9, 0x08, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, + 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, + 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, + 0x6f, 0x72, 0x79, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, + 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x6e, 0x64, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x30, 0x0a, 0x13, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x26, 0x0a, + 0x0e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x56, 0x61, 0x6c, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, + 0x65, 0x72, 0x56, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, + 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, + 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x22, 0x0a, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, + 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, + 0x4e, 0x75, 0x6d, 0x12, 0x22, 0x0a, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, + 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x31, 0x18, + 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x31, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x31, 0x18, 0x16, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x31, 0x12, 0x1e, 0x0a, + 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x34, 0x18, 0x17, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x34, 0x12, 0x1a, 0x0a, + 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x34, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x34, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x39, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x39, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, + 0x54, 0x69, 0x6d, 0x65, 0x39, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, + 0x54, 0x69, 0x6d, 0x65, 0x39, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x36, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x36, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, + 0x36, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, + 0x36, 0x12, 0x2e, 0x0a, 0x12, 0x4e, 0x65, 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x4e, + 0x65, 0x65, 0x64, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, + 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x62, 0x6c, 0x75, 0x65, 0x73, + 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, + 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x20, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0xd6, 0x09, + 0x0a, 0x0c, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2b, + 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x1a, 0x82, 0x09, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, + 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, + 0x72, 0x6b, 0x55, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x22, + 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, + 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x09, 0x20, + 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, + 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2c, + 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2a, 0x0a, 0x10, + 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x61, 0x6e, 0x61, + 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, + 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, + 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, + 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, + 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, + 0x63, 0x72, 0x69, 0x70, 0x74, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x22, + 0x0a, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x13, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x15, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x64, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, + 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x17, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x31, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x31, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x34, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x34, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x39, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x39, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x36, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x1b, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x36, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x56, + 0x0a, 0x0f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, + 0x73, 0x18, 0x1c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, + 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, + 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x49, 0x44, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x79, + 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, + 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x1e, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x1a, 0x42, 0x0a, 0x14, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x49, 0x44, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, + 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x2b, 0x0a, 0x0d, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, + 0x75, 0x69, 0x64, 0x22, 0xfb, 0x01, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x67, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, + 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, + 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, + 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, + 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, + 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x22, 0xf0, 0x08, 0x0a, 0x0e, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, + 0x61, 0x6d, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x31, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x31, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, + 0x6e, 0x66, 0x69, 0x67, 0x32, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, + 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x32, + 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x33, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x33, 0x12, 0x3b, 0x0a, + 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x34, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x69, + 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x69, + 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, + 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, + 0x72, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, + 0x49, 0x44, 0x12, 0x33, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, + 0x61, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, + 0x6f, 0x72, 0x6b, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x57, 0x6f, 0x72, 0x6b, + 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, + 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, + 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x4a, 0x0a, 0x0c, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x44, 0x61, 0x74, 0x61, 0x18, 0x12, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x26, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, + 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x44, 0x61, 0x74, 0x61, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x76, 0x65, 0x72, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4d, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x10, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x4d, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6e, 0x65, 0x65, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x19, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0f, 0x6e, 0x65, + 0x65, 0x64, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x22, 0x0a, + 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x1a, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x53, 0x75, 0x62, 0x4e, 0x75, + 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, + 0x1b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x3b, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x35, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x35, 0x1a, 0x54, + 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x44, 0x61, 0x74, 0x61, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x29, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x22, 0xaf, 0x03, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, + 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x4e, + 0x55, 0x4d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, + 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, + 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, + 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x37, 0x0a, 0x0b, + 0x61, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x50, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x3f, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x46, 0x61, 0x69, 0x6c, + 0x54, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x45, 0x4e, 0x55, + 0x4d, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x54, 0x69, + 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x61, 0x6c, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x32, 0x0a, 0x10, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0xa2, 0x02, 0x0a, 0x11, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, + 0x12, 0x30, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x1a, 0xda, 0x01, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x66, + 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x6f, 0x72, + 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x77, 0x6f, + 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, + 0x6b, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x71, + 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x70, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, + 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x8a, 0x03, 0x0a, + 0x0e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2d, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, + 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x1a, 0xb2, 0x02, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, + 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, + 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, + 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, + 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, + 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, + 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x6d, 0x61, + 0x67, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x69, 0x6d, 0x61, 0x67, 0x65, + 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, + 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x55, 0x72, 0x6c, 0x22, 0x2a, 0x0a, 0x0a, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x55, + 0x75, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x77, 0x6f, 0x72, 0x6b, + 0x55, 0x75, 0x69, 0x64, 0x73, 0x22, 0x85, 0x01, 0x0a, 0x0b, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x1a, 0x4a, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, + 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x5a, 0x0a, + 0x0c, 0x52, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, + 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x09, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x73, 0x12, 0x2c, 0x0a, 0x11, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x73, 0x22, 0x4d, 0x0a, 0x0d, 0x52, 0x65, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x6f, + 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x77, + 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x73, 0x22, 0x28, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x57, + 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x22, 0x29, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, + 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0xe6, 0x01, + 0x0a, 0x0c, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, + 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x12, 0x30, 0x0a, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, + 0x72, 0x65, 0x61, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x41, 0x72, 0x65, 0x61, 0x43, 0x6f, + 0x64, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, + 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, + 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x22, 0x2f, 0x0a, 0x0d, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0xc2, 0x02, 0x0a, 0x0e, 0x41, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x32, 0x0a, 0x14, 0x54, 0x69, + 0x6b, 0x54, 0x6f, 0x6b, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, + 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, + 0x0a, 0x15, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x59, + 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x49, 0x6e, 0x73, 0x45, 0x66, 0x66, 0x65, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x11, 0x49, 0x6e, 0x73, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x44, 0x4d, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x44, 0x4d, + 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, + 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x34, 0x0a, 0x15, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, + 0x79, 0x45, 0x66, 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x45, 0x66, + 0x66, 0x65, 0x63, 0x74, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x4e, 0x0a, 0x12, + 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x65, 0x71, 0x12, 0x38, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, + 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x22, 0x91, 0x01, 0x0a, + 0x13, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x65, 0x73, 0x70, 0x12, 0x38, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x72, + 0x6b, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, + 0x65, 0x71, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x12, 0x22, + 0x0a, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x22, 0xdd, 0x02, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, + 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x26, 0x0a, + 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x49, 0x64, 0x12, 0x3d, 0x0a, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x22, 0x0a, 0x0c, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, 0x64, + 0x22, 0x5b, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x3e, 0x0a, + 0x10, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61, 0x74, + 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x10, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x22, 0x38, 0x0a, + 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x77, + 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x77, + 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x22, 0x9b, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x67, + 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x16, 0x0a, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3a, 0x0a, 0x12, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, + 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x0d, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x22, 0xe2, 0x03, 0x0a, 0x13, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, + 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x32, 0x0a, 0x04, 0x44, 0x61, 0x74, + 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, + 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x1a, 0x96, 0x03, + 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, + 0x69, 0x64, 0x12, 0x57, 0x0a, 0x10, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, + 0x66, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x10, 0x50, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x44, 0x61, 0x74, 0x61, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x1a, 0xf8, 0x01, 0x0a, 0x0c, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x26, 0x0a, 0x0e, + 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x49, 0x44, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, + 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x3d, 0x0a, 0x0f, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, + 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x24, 0x0a, 0x10, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0x3f, 0x0a, 0x11, 0x4f, + 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x71, + 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x8e, 0x01, 0x0a, + 0x12, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x4b, 0x65, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x72, 0x6c, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, 0x74, 0x68, 0x55, 0x72, 0x6c, 0x22, 0x56, 0x0a, + 0x14, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x59, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x54, 0x6f, 0x6b, + 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x7d, 0x0a, 0x15, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x59, 0x6f, + 0x75, 0x74, 0x75, 0x62, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, + 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x22, 0x77, 0x0a, 0x13, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, + 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x63, + 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, + 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x22, 0x16, 0x0a, + 0x14, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0xf8, 0x01, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x4f, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x12, 0x2d, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x2e, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x1a, 0xb6, 0x01, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x61, 0x73, 0x49, 0x44, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x61, 0x73, 0x49, 0x44, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x75, 0x74, 0x49, 0x6e, 0x66, + 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x75, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x22, 0x83, 0x01, 0x0a, 0x0f, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, + 0x6e, 0x52, 0x65, 0x71, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, + 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x66, 0x72, + 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, + 0x55, 0x4d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x16, + 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x22, 0x5c, 0x0a, 0x10, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, + 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x63, + 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x26, 0x0a, 0x0e, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, + 0x65, 0x72, 0x49, 0x44, 0x22, 0x7f, 0x0a, 0x13, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x77, + 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, + 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x55, 0x75, 0x69, 0x64, 0x22, 0x94, 0x01, 0x0a, 0x14, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, + 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x2c, 0x0a, 0x11, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x22, 0x22, 0x0a, 0x08, + 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x22, 0x9e, 0x02, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, + 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, + 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, + 0x6f, 0x6e, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, + 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, + 0x65, 0x22, 0x2b, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, + 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x27, + 0x0a, 0x11, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x8c, 0x03, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, + 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, + 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, + 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x20, 0x0a, 0x0b, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, + 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x12, 0x16, + 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x61, 0x6c, 0x49, 0x44, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, + 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x22, 0xb5, 0x02, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, 0x14, + 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x26, 0x0a, 0x0e, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x77, + 0x6f, 0x72, 0x64, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4b, + 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x28, + 0x0a, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, + 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0d, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, + 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0xa5, + 0x03, 0x0a, 0x0f, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x71, 0x75, 0x6f, 0x74, + 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x71, 0x75, + 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x55, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, + 0x61, 0x74, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x4e, 0x75, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x18, 0x0a, 0x07, + 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x57, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, + 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x29, + 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, + 0x2a, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x46, 0x0a, 0x19, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x29, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x56, 0x69, + 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x22, 0x89, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, + 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x29, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, + 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, + 0xa7, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, 0x0a, 0x77, 0x6f, 0x72, + 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, + 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, + 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, + 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, + 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, + 0x6c, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, + 0x65, 0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, 0x72, + 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x56, 0x0a, 0x0c, 0x53, 0x65, 0x74, + 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, + 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, + 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, + 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6f, 0x72, 0x6d, 0x4e, 0x61, 0x6d, + 0x65, 0x22, 0x42, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x65, + 0x71, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x6f, 0x72, + 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6f, 0x72, + 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x3f, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, + 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x6f, + 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x6f, + 0x72, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x79, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, + 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, + 0x6d, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, + 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x22, 0x31, 0x0a, 0x0f, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x22, 0x2e, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x22, 0x93, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, + 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, + 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1a, + 0x0a, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x75, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0xe4, 0x01, 0x0a, 0x0e, 0x4c, + 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, + 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, + 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, + 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x08, 0x63, 0x61, 0x74, + 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, + 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, + 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x04, 0x72, 0x61, 0x6e, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x20, 0x0a, 0x0b, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x22, 0xfc, 0x01, 0x0a, 0x0a, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x16, 0x0a, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x2e, 0x0a, 0x08, 0x63, 0x61, 0x74, 0x65, + 0x67, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x08, + 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, + 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, + 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, + 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x75, 0x73, + 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x69, 0x6e, 0x65, 0x4e, 0x6f, 0x12, 0x20, + 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, + 0x22, 0x4d, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, + 0x3c, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x6f, + 0x6d, 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x7f, 0x0a, + 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x24, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x6d, + 0x70, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, 0x0c, + 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0c, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x69, 0x6c, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x7a, + 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x0a, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, + 0x72, 0x65, 0x66, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, + 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, + 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0x57, 0x0a, 0x0f, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x30, 0x0a, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x12, 0x0a, 0x04, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, + 0x75, 0x69, 0x64, 0x22, 0x32, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x2e, 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x41, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0x55, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x41, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x30, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x55, 0x75, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x55, 0x75, 0x69, 0x64, 0x22, 0xa7, + 0x06, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, + 0x62, 0x4e, 0x75, 0x6d, 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, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, + 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, + 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x14, + 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, + 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x69, + 0x65, 0x77, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, + 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, + 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x43, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, + 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6d, + 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x22, 0x0a, 0x0c, + 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x13, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, + 0x6e, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, + 0x77, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, + 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x12, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x10, + 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x22, 0x2c, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0xd1, 0x05, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, + 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x75, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x12, 0x2c, + 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, + 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, + 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, + 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, + 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x69, 0x65, + 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, + 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, + 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x22, + 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, + 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x55, + 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, + 0x46, 0x61, 0x6e, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, + 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x18, 0x12, 0x20, + 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, + 0x69, 0x65, 0x77, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, + 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x2e, + 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x65, 0x72, 0x69, + 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2a, + 0x0a, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, + 0x65, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x22, 0xb7, 0x02, 0x0a, 0x1b, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x34, 0x0a, 0x0a, 0x77, 0x6f, + 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x14, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x45, 0x4e, 0x55, 0x4d, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, + 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x61, 0x6c, 0x49, 0x44, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, + 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x70, 0x70, + 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, + 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, + 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x54, 0x79, 0x70, 0x65, 0x22, 0xc9, 0x02, 0x0a, 0x13, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x0a, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, + 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2e, + 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x77, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, + 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x2c, + 0x0a, 0x11, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x44, + 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x61, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x44, 0x61, 0x74, 0x61, 0x12, 0x22, 0x0a, 0x0c, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, + 0x22, 0xfe, 0x01, 0x0a, 0x16, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, + 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, + 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, + 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, + 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, + 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, + 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, + 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x22, 0x81, 0x02, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x81, 0x02, 0x0a, 0x17, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, + 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, + 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, + 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8a, 0x02, 0x0a, 0x1a, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x0d, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, + 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x84, 0x02, 0x0a, 0x18, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, + 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, + 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x73, 0x74, + 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, + 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, + 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, + 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x87, 0x01, + 0x0a, 0x15, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x6f, + 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x63, 0x69, 0x74, 0x69, 0x65, 0x73, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8b, 0x01, 0x0a, 0x19, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x8a, 0x01, 0x0a, 0x18, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, + 0x4a, 0x53, 0x4f, 0x4e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x64, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x4a, 0x53, 0x4f, 0x4e, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x22, 0xc1, 0x01, 0x0a, 0x11, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, + 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x55, 0x75, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x13, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x54, + 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x13, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x08, 0x63, 0x6f, 0x73, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x2e, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, + 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x32, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, + 0x65, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, + 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x22, 0xef, 0x0b, 0x0a, 0x13, 0x47, + 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, + 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x22, + 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, + 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, + 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x63, 0x6f, 0x73, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x73, 0x74, + 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0e, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, + 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, + 0x66, 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, + 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, + 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, + 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, + 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x73, 0x18, 0x18, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x19, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x1a, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, + 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, + 0x1b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x44, 0x61, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, + 0x54, 0x69, 0x6d, 0x65, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, + 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x1d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x3c, 0x0a, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x46, 0x61, + 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, + 0x69, 0x65, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x56, 0x69, 0x65, + 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, + 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x48, 0x0a, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x12, 0x42, 0x0a, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x0f, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x54, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x0f, 0x74, 0x6f, 0x70, 0x43, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x51, 0x0a, 0x13, 0x6d, + 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, 0x69, + 0x65, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x52, 0x13, 0x6d, 0x6f, 0x73, 0x74, 0x41, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x4e, + 0x0a, 0x12, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x18, 0x25, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, + 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x52, 0x12, 0x62, 0x65, 0x73, 0x74, + 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x1c, + 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x26, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0xf1, 0x0c, 0x0a, + 0x19, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, + 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x6f, 0x72, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, + 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, + 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, + 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2e, 0x0a, 0x12, 0x77, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x61, 0x73, + 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, + 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x04, 0x63, 0x6f, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, + 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, + 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, + 0x49, 0x44, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x61, 0x6c, 0x49, 0x44, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x18, 0x11, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x12, 0x2c, 0x0a, 0x11, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x11, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, + 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x77, 0x6f, 0x72, 0x6b, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x69, + 0x65, 0x77, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x18, 0x17, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x18, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, + 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x19, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x66, + 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x43, + 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x74, 0x6f, 0x70, + 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6d, + 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x12, 0x22, 0x0a, 0x0c, + 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x1c, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x12, 0x4b, 0x0a, 0x13, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, + 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x18, 0x1d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x13, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x6f, 0x67, 0x44, 0x61, 0x74, 0x61, 0x12, 0x3c, 0x0a, + 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x1e, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, + 0x0a, 0x66, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x76, + 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, + 0x0b, 0x76, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, + 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x20, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, + 0x52, 0x0b, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x48, 0x0a, + 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, + 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0c, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x0f, 0x74, + 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x23, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x54, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, + 0x73, 0x52, 0x0f, 0x74, 0x6f, 0x70, 0x43, 0x69, 0x74, 0x69, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, + 0x65, 0x73, 0x12, 0x51, 0x0a, 0x13, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x44, 0x61, 0x79, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x24, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, + 0x52, 0x13, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x4e, 0x0a, 0x12, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, + 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x25, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x52, 0x12, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x05, 0x65, 0x78, 0x74, 0x72, 0x61, 0x18, 0x26, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x45, 0x78, 0x74, 0x72, 0x61, 0x52, 0x05, 0x65, + 0x78, 0x74, 0x72, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x18, 0x27, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, + 0x28, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x22, 0xc9, 0x03, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x75, 0x69, 0x64, + 0x4c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x75, 0x75, 0x69, 0x64, + 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x1c, 0x0a, 0x09, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, 0x72, 0x6d, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x34, 0x0a, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x15, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x30, 0x0a, 0x13, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, + 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x0f, + 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, + 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, + 0x70, 0x61, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, + 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x22, 0xe4, 0x03, 0x0a, + 0x10, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 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, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, 0x6f, + 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x2e, 0x0a, 0x12, 0x77, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x77, 0x6f, 0x72, + 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6d, 0x66, 0x69, + 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, + 0x6d, 0x66, 0x69, 0x72, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x75, 0x62, + 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x64, 0x66, 0x55, 0x72, 0x6c, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x14, 0x0a, + 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, + 0x74, 0x6c, 0x65, 0x22, 0x58, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x2b, 0x0a, + 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0xa5, 0x02, 0x0a, 0x11, 0x41, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, + 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, 0x1e, + 0x0a, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x2a, + 0x0a, 0x10, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, + 0x64, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x65, 0x78, + 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x45, + 0x6e, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x75, 0x62, + 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x24, 0x0a, 0x0d, + 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x45, + 0x6e, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x22, 0xd4, 0x05, 0x0a, 0x12, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, + 0x61, 0x52, 0x65, 0x73, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, + 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, + 0x6d, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, + 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4e, 0x61, 0x6d, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x4e, + 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x3a, 0x0a, 0x18, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x18, 0x61, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x12, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x12, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x44, 0x0a, 0x1d, 0x64, 0x61, 0x74, 0x61, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x1d, 0x64, 0x61, + 0x74, 0x61, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x73, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, + 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, + 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, + 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, + 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, + 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, + 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x61, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x61, 0x73, 0x74, 0x57, 0x6f, + 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x65, 0x78, 0x70, 0x69, 0x72, + 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x65, 0x78, + 0x70, 0x69, 0x72, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x64, + 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, + 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6d, 0x61, + 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x69, + 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x58, 0x0a, 0x12, 0x41, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x2c, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, + 0x65, 0x73, 0x70, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, + 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x22, 0xac, 0x01, 0x0a, 0x10, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, + 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x56, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x56, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, + 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x22, 0x85, 0x04, 0x0a, 0x11, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, + 0x4c, 0x69, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, + 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, + 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, + 0x6e, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, + 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x1e, + 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x61, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x61, 0x73, + 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, + 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6d, + 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x56, 0x0a, 0x11, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, + 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x22, 0x25, 0x0a, 0x0f, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, + 0x65, 0x77, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x22, 0xc0, 0x06, 0x0a, 0x10, 0x44, 0x61, + 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x73, 0x70, 0x12, 0x22, + 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x11, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x74, + 0x6f, 0x64, 0x61, 0x79, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, + 0x0a, 0x0e, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x46, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x46, 0x61, 0x6e, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x56, + 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x56, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, + 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x2e, 0x0a, 0x12, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x74, 0x6f, + 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x53, 0x68, 0x61, 0x72, 0x65, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x74, 0x6f, + 0x64, 0x61, 0x79, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, + 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, + 0x0a, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x49, 0x6d, + 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x64, 0x65, + 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, + 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0f, 0x74, 0x6f, 0x64, 0x61, + 0x79, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0f, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, 0x61, 0x74, + 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x63, 0x6f, + 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x34, + 0x0a, 0x15, 0x74, 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, 0x61, + 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x03, 0x52, 0x15, 0x74, + 0x6f, 0x64, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x44, 0x61, 0x74, 0x61, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x36, 0x0a, 0x16, 0x74, 0x6f, 0x42, 0x65, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x13, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x16, 0x74, 0x6f, 0x42, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, + 0x6d, 0x65, 0x64, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2e, 0x0a, 0x12, + 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x03, 0x52, 0x12, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x69, 0x6e, 0x67, 0x44, 0x61, 0x74, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x90, 0x02, 0x0a, + 0x16, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, + 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x55, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x55, 0x49, 0x44, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, + 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x46, 0x61, 0x6e, 0x73, 0x12, + 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, + 0x77, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, + 0x54, 0x79, 0x70, 0x65, 0x56, 0x69, 0x65, 0x77, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x65, 0x72, + 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x69, + 0x6b, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x12, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, + 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x70, + 0x65, 0x72, 0x69, 0x6f, 0x64, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x61, 0x72, 0x65, 0x73, 0x22, + 0xf2, 0x03, 0x0a, 0x17, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, + 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x3c, 0x0a, 0x0a, 0x66, + 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x46, 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0a, 0x66, + 0x61, 0x6e, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x76, 0x69, 0x65, + 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x56, 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, 0x76, + 0x69, 0x65, 0x77, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x0b, 0x6c, 0x69, + 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0b, + 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x48, 0x0a, 0x0e, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0e, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, + 0x65, 0x72, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, + 0x68, 0x61, 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x52, 0x0c, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0c, 0x62, 0x65, 0x73, + 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x73, 0x69, 0x73, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x52, + 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x45, 0x0a, + 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x4d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x65, 0x44, 0x61, 0x79, 0x52, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x44, 0x61, 0x79, 0x22, 0x71, 0x0a, 0x1b, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, + 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x55, 0x49, + 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x55, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x22, 0x37, 0x0a, 0x0b, 0x53, 0x69, 0x6d, 0x70, 0x6c, + 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x22, 0x47, 0x0a, 0x11, 0x42, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, + 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x50, 0x6f, 0x69, + 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x50, 0x6f, + 0x69, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x3c, 0x0a, 0x12, 0x4d, 0x6f, 0x73, + 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x12, + 0x10, 0x0a, 0x03, 0x64, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x64, 0x61, + 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x94, 0x04, 0x0a, 0x1c, 0x41, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, + 0x6e, 0x64, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, + 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x25, + 0x0a, 0x04, 0x66, 0x61, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, + 0x04, 0x66, 0x61, 0x6e, 0x73, 0x12, 0x27, 0x0a, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x18, 0x07, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, + 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x05, 0x76, 0x69, 0x65, 0x77, 0x73, 0x12, 0x27, + 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x08, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x08, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, + 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x69, + 0x6d, 0x70, 0x6c, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x73, 0x12, 0x3b, 0x0a, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, + 0x65, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x42, + 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x50, 0x6f, 0x69, 0x6e, 0x74, + 0x52, 0x0c, 0x62, 0x65, 0x73, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3e, + 0x0a, 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x18, + 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x6f, 0x73, + 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x50, 0x6f, 0x69, 0x6e, 0x74, 0x52, + 0x0d, 0x6d, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x44, 0x61, 0x79, 0x22, 0x66, + 0x0a, 0x14, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, + 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xff, 0x03, 0x0a, 0x11, 0x54, 0x6f, 0x62, 0x65, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, + 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, + 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, + 0x12, 0x22, 0x0a, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x61, 0x74, 0x65, + 0x67, 0x6f, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, + 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x49, 0x64, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x55, 0x75, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0f, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x73, + 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x73, + 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x41, 0x74, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, + 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x69, 0x74, 0x65, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, + 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x64, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x5a, 0x0a, 0x15, 0x54, 0x6f, 0x62, 0x65, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x12, 0x2b, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x72, 0x6d, 0x65, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, + 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x55, 0x0a, 0x1f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, + 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x22, 0xe7, 0x04, 0x0a, 0x15, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, + 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, + 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, + 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, + 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x69, + 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x69, + 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x61, 0x69, + 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, + 0x61, 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x69, + 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x61, 0x69, + 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0x52, 0x0a, 0x1f, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x2f, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, + 0x74, 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3c, 0x0a, 0x20, 0x55, 0x70, 0x73, + 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, + 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, + 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, + 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0xcc, 0x04, 0x0a, 0x14, 0x57, 0x6f, 0x72, 0x6b, + 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x74, 0x65, 0x6d, + 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x75, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, + 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, + 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x61, + 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x66, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, + 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x61, + 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x22, 0x50, 0x0a, 0x1e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, + 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x2e, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, + 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x74, + 0x65, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x3b, 0x0a, 0x1f, 0x55, 0x70, 0x73, 0x65, + 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, + 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x73, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x22, 0x9a, 0x01, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x65, 0x71, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, + 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x22, 0x9a, 0x02, 0x0a, 0x12, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, + 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, + 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x73, 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, + 0x75, 0x62, 0x4e, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x2e, 0x0a, 0x12, 0x61, + 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, + 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x61, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, + 0x65, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, + 0x5f, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, + 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2c, 0x0a, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, + 0x22, 0x9b, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x20, 0x0a, 0x0b, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0d, 0x52, 0x0b, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x73, 0x12, 0x2e, + 0x0a, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, + 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, + 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x88, + 0x04, 0x0a, 0x10, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, + 0x75, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, + 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x52, 0x65, 0x73, 0x70, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, + 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x12, + 0x2e, 0x0a, 0x12, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x12, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, + 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, + 0x75, 0x69, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x26, 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, + 0x44, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x22, 0x5c, 0x0a, 0x18, 0x4c, 0x69, 0x73, + 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x50, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x98, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, + 0x79, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, + 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, + 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, + 0x74, 0x65, 0x22, 0xa3, 0x05, 0x0a, 0x15, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, + 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, + 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, + 0x12, 0x26, 0x0a, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, + 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, + 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1c, 0x0a, 0x09, + 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x09, 0x66, 0x61, 0x6e, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, + 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, 0x69, + 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, + 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, + 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, + 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, + 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x12, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, + 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x13, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x62, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2f, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, + 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x97, 0x01, 0x0a, + 0x17, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, + 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x73, 0x53, 0x75, + 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x69, 0x73, 0x53, + 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, 0x79, + 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x61, 0x69, 0x6c, 0x54, 0x79, + 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x22, 0x88, 0x05, 0x0a, 0x14, 0x57, 0x6f, 0x72, 0x6b, 0x4d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x12, + 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, + 0x75, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x75, 0x69, 0x64, 0x12, + 0x26, 0x0a, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, + 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, + 0x63, 0x55, 0x73, 0x65, 0x72, 0x49, 0x44, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, + 0x61, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, + 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x50, + 0x68, 0x6f, 0x6e, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, + 0x73, 0x74, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x76, + 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x76, 0x69, 0x65, 0x77, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6c, + 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x0a, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x03, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x68, 0x61, 0x72, 0x65, 0x73, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x49, 0x44, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x70, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x44, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x69, + 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, + 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x66, 0x61, 0x69, + 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x66, + 0x61, 0x69, 0x6c, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x69, + 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x61, 0x69, + 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, + 0x41, 0x74, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, + 0x74, 0x22, 0x60, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x2e, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, + 0x69, 0x6c, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, + 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x22, 0xad, 0x01, 0x0a, 0x11, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x54, 0x61, + 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x1e, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, + 0x22, 0x0a, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, + 0x61, 0x6d, 0x65, 0x22, 0x3a, 0x0a, 0x12, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x54, 0x61, 0x73, + 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x10, 0x0a, + 0x03, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, + 0x24, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0xe4, 0x01, 0x0a, 0x0c, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, + 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x03, 0x75, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x0a, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x22, 0x0a, 0x0c, + 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1c, + 0x0a, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x4b, 0x0a, 0x0f, + 0x47, 0x65, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, + 0x26, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, + 0x6f, 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, 0x91, 0x01, 0x0a, 0x0f, 0x4c, 0x69, + 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, + 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, + 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x49, 0x44, 0x12, 0x12, 0x0a, + 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x62, 0x0a, + 0x10, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x12, 0x26, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x10, 0x0a, 0x03, 0x6d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, + 0x67, 0x22, 0x27, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x75, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x75, 0x75, 0x69, 0x64, 0x22, 0x35, 0x0a, 0x1f, 0x43, 0x61, + 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x73, 0x42, 0x79, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, + 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x64, 0x61, 0x74, + 0x65, 0x22, 0x3c, 0x0a, 0x20, 0x43, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x79, 0x57, 0x6f, 0x72, 0x6b, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x2a, + 0x54, 0x0a, 0x0e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x44, 0x45, 0x4e, 0x55, + 0x4d, 0x12, 0x0b, 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0a, + 0x0a, 0x06, 0x54, 0x49, 0x4b, 0x54, 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x59, 0x4f, + 0x55, 0x54, 0x55, 0x42, 0x45, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x49, 0x4e, 0x53, 0x10, 0x03, + 0x12, 0x06, 0x0a, 0x02, 0x44, 0x4d, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x42, 0x55, 0x4c, 0x45, + 0x53, 0x4b, 0x59, 0x10, 0x05, 0x2a, 0x39, 0x0a, 0x0e, 0x41, 0x75, 0x74, 0x68, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, + 0x57, 0x4e, 0x41, 0x75, 0x74, 0x68, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x75, 0x74, 0x68, + 0x4f, 0x6b, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x75, 0x74, 0x68, 0x4e, 0x6f, 0x10, 0x02, + 0x2a, 0x81, 0x01, 0x0a, 0x0e, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x45, + 0x4e, 0x55, 0x4d, 0x12, 0x0d, 0x0a, 0x09, 0x4e, 0x4f, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, + 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x52, 0x4d, 0x10, 0x01, 0x12, + 0x0c, 0x0a, 0x08, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x10, 0x02, 0x12, 0x11, 0x0a, + 0x0d, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x10, 0x03, + 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x4a, + 0x45, 0x43, 0x54, 0x10, 0x04, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x50, 0x50, 0x52, 0x4f, 0x56, 0x41, + 0x4c, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x52, 0x45, + 0x41, 0x44, 0x10, 0x06, 0x2a, 0x56, 0x0a, 0x0f, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x75, 0x74, 0x6f, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x55, 0x4e, 0x4b, 0x4f, 0x4e, 0x57, 0x10, 0x00, 0x12, + 0x14, 0x0a, 0x10, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x54, + 0x52, 0x55, 0x45, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x6f, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x5f, 0x46, 0x41, 0x4c, 0x53, 0x45, 0x10, 0x02, 0x2a, 0xa6, 0x01, 0x0a, + 0x11, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x45, 0x4e, + 0x55, 0x4d, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x4e, 0x4f, 0x10, 0x00, 0x12, 0x1a, 0x0a, + 0x16, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x5f, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, + 0x44, 0x4f, 0x4e, 0x45, 0x10, 0x02, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x46, 0x41, 0x49, + 0x4c, 0x10, 0x03, 0x12, 0x20, 0x0a, 0x1c, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x45, 0x58, 0x43, 0x45, 0x50, 0x54, + 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x2a, 0x65, 0x0a, 0x0f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x46, 0x61, 0x69, 0x6c, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x66, + 0x69, 0x72, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x45, 0x4e, 0x55, 0x4d, 0x5f, 0x4e, 0x4f, 0x10, 0x00, + 0x12, 0x1d, 0x0a, 0x19, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x45, + 0x4e, 0x55, 0x4d, 0x5f, 0x4e, 0x4f, 0x54, 0x45, 0x4e, 0x4f, 0x55, 0x47, 0x48, 0x10, 0x01, 0x12, + 0x1b, 0x0a, 0x17, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x46, 0x61, 0x69, 0x6c, 0x45, 0x4e, + 0x55, 0x4d, 0x5f, 0x45, 0x58, 0x50, 0x49, 0x52, 0x45, 0x44, 0x10, 0x02, 0x2a, 0x59, 0x0a, 0x0c, + 0x43, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x45, 0x4e, 0x55, 0x4d, 0x12, 0x14, 0x0a, 0x10, + 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x43, 0x41, 0x54, 0x45, 0x47, 0x4f, 0x52, 0x59, + 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x49, 0x54, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x0b, 0x0a, + 0x07, 0x43, 0x4f, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x49, 0x4d, + 0x41, 0x47, 0x45, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x4e, 0x47, 0x5f, 0x43, 0x4f, + 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x10, 0x04, 0x32, 0xe7, 0x27, 0x0a, 0x04, 0x43, 0x61, 0x73, 0x74, + 0x12, 0x42, 0x0a, 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, + 0x74, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, + 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1b, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, 0x55, 0x6e, 0x62, 0x69, 0x6e, + 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x12, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, + 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x6e, 0x62, 0x69, 0x6e, 0x64, 0x4d, 0x61, + 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0b, 0x42, + 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x12, 0x14, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x42, 0x69, 0x6e, 0x64, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x52, 0x65, 0x71, + 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x18, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, + 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, + 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, + 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, + 0x0a, 0x09, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, + 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x13, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, + 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1c, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x79, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x33, 0x0a, 0x08, + 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, + 0x00, 0x12, 0x39, 0x0a, 0x0a, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, + 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x15, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x42, 0x0a, + 0x0d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x16, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, + 0x64, 0x69, 0x61, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, + 0x00, 0x12, 0x39, 0x0a, 0x0a, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x12, + 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x57, 0x6f, 0x72, 0x6b, + 0x73, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, + 0x61, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x30, 0x0a, 0x07, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, + 0x0a, 0x09, 0x52, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x12, 0x12, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x52, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x52, 0x65, 0x71, 0x1a, + 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x35, 0x0a, 0x07, 0x44, 0x65, 0x6c, 0x57, 0x6f, 0x72, + 0x6b, 0x12, 0x10, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x57, 0x6f, 0x72, 0x6b, + 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x33, 0x0a, + 0x08, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x11, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x57, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, + 0x22, 0x00, 0x12, 0x39, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x48, 0x0a, + 0x0f, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, + 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, + 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x5d, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x65, 0x71, 0x1a, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4f, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x12, 0x1d, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x0f, 0x52, 0x65, 0x66, 0x72, 0x65, + 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x18, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, + 0x65, 0x73, 0x68, 0x57, 0x6f, 0x72, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, + 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x56, 0x32, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, + 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x56, 0x32, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x56, 0x32, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x10, 0x4f, 0x41, 0x75, + 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x19, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, 0x6f, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x4f, 0x41, 0x75, 0x74, 0x68, 0x43, 0x6f, 0x64, 0x65, 0x54, 0x6f, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x4f, 0x41, 0x75, 0x74, 0x68, 0x12, 0x14, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x4f, 0x41, 0x75, 0x74, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, + 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, + 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x54, 0x6f, 0x6b, 0x65, 0x6e, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x10, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, + 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x19, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x50, 0x75, 0x62, + 0x6c, 0x69, 0x73, 0x68, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, + 0x70, 0x22, 0x00, 0x12, 0x31, 0x0a, 0x05, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x12, 0x0e, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x6f, 0x6c, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x1a, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, + 0x71, 0x1a, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x69, 0x64, 0x65, + 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, + 0x10, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x73, 0x12, 0x19, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x49, 0x0a, 0x11, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, + 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x5d, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, + 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, + 0x1a, 0x20, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x69, + 0x64, 0x65, 0x6f, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, + 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, + 0x72, 0x69, 0x70, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x72, 0x69, 0x70, 0x74, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, + 0x00, 0x12, 0x36, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x12, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, + 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x79, + 0x6f, 0x75, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x39, 0x0a, 0x09, 0x53, 0x65, 0x74, + 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x53, 0x65, + 0x74, 0x4c, 0x61, 0x79, 0x6f, 0x75, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, + 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, + 0x6d, 0x70, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, + 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x13, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, + 0x65, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3c, + 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x12, 0x14, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, + 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, + 0x68, 0x12, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, + 0x72, 0x6f, 0x6d, 0x70, 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x6d, 0x70, + 0x74, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x12, 0x15, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x36, 0x0a, + 0x09, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x12, 0x12, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x13, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x51, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, + 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x21, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, + 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x54, + 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x12, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, + 0x71, 0x1a, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, + 0x73, 0x70, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, + 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1e, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x4c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x19, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x10, 0x4c, 0x69, + 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x19, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, + 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4b, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x12, 0x1b, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x22, 0x00, 0x12, 0x5f, 0x0a, 0x1c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x57, 0x6f, + 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x61, 0x6c, 0x49, 0x44, 0x12, 0x25, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x57, 0x6f, 0x72, 0x6b, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x41, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, + 0x70, 0x74, 0x79, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, + 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, + 0x1a, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x44, 0x61, + 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x42, 0x0a, 0x0d, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, + 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x44, 0x61, 0x74, 0x61, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, + 0x12, 0x3f, 0x0a, 0x0c, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, + 0x12, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, + 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, + 0x61, 0x74, 0x61, 0x4f, 0x76, 0x65, 0x72, 0x76, 0x69, 0x65, 0x77, 0x52, 0x65, 0x73, 0x70, 0x22, + 0x00, 0x12, 0x54, 0x0a, 0x13, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, 0x72, + 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x53, 0x65, 0x72, 0x69, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x63, 0x0a, 0x18, 0x41, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, 0x6e, + 0x64, 0x6f, 0x77, 0x12, 0x21, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, + 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x69, 0x6e, + 0x64, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x22, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x41, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, + 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x11, + 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, + 0x74, 0x12, 0x1a, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, + 0x66, 0x69, 0x72, 0x6d, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x1b, 0x2e, + 0x43, 0x61, 0x73, 0x74, 0x2e, 0x54, 0x6f, 0x62, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x72, 0x6d, + 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x6f, 0x0a, 0x1c, + 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x25, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x65, 0x71, 0x1a, 0x26, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, + 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, + 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x6c, 0x0a, + 0x1b, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x12, 0x24, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x65, 0x71, 0x1a, 0x25, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, + 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, + 0x42, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x15, 0x4c, + 0x69, 0x73, 0x74, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, + 0x61, 0x69, 0x6c, 0x79, 0x12, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, + 0x79, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, + 0x79, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x57, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x57, + 0x6f, 0x72, 0x6b, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x12, + 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x1a, 0x1e, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, + 0x12, 0x6f, 0x0a, 0x1c, 0x43, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, + 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x79, 0x57, 0x6f, 0x72, 0x6b, 0x73, + 0x12, 0x25, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, + 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x42, 0x79, 0x57, + 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x26, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x43, + 0x61, 0x6c, 0x63, 0x75, 0x6c, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x42, 0x79, 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, + 0x00, 0x12, 0x5a, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, + 0x72, 0x53, 0x68, 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, + 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x43, 0x61, 0x73, + 0x74, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x41, 0x79, 0x72, 0x53, 0x68, + 0x61, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x57, 0x0a, + 0x14, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1d, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, + 0x74, 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x57, 0x6f, 0x72, 0x6b, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x45, 0x0a, 0x0e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, + 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x17, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, + 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, + 0x71, 0x1a, 0x18, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x55, 0x70, 0x73, 0x65, 0x72, 0x74, 0x54, + 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3c, 0x0a, + 0x0b, 0x47, 0x65, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x14, 0x2e, 0x43, + 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x54, 0x61, 0x73, + 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0c, 0x4c, + 0x69, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x15, 0x2e, 0x43, 0x61, + 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x54, 0x61, + 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x12, 0x43, 0x0a, 0x0e, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x17, + 0x2e, 0x43, 0x61, 0x73, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x61, 0x73, 0x6b, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, + 0x00, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x63, 0x61, 0x73, 0x74, 0x3b, 0x63, 0x61, 0x73, 0x74, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} var ( file_pb_fiee_cast_proto_rawDescOnce sync.Once - file_pb_fiee_cast_proto_rawDescData []byte + file_pb_fiee_cast_proto_rawDescData = file_pb_fiee_cast_proto_rawDesc ) func file_pb_fiee_cast_proto_rawDescGZIP() []byte { file_pb_fiee_cast_proto_rawDescOnce.Do(func() { - file_pb_fiee_cast_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_pb_fiee_cast_proto_rawDesc), len(file_pb_fiee_cast_proto_rawDesc))) + file_pb_fiee_cast_proto_rawDescData = protoimpl.X.CompressGZIP(file_pb_fiee_cast_proto_rawDescData) }) return file_pb_fiee_cast_proto_rawDescData } var file_pb_fiee_cast_proto_enumTypes = make([]protoimpl.EnumInfo, 7) var file_pb_fiee_cast_proto_msgTypes = make([]protoimpl.MessageInfo, 165) -var file_pb_fiee_cast_proto_goTypes = []any{ +var file_pb_fiee_cast_proto_goTypes = []interface{}{ (PlatformIDENUM)(0), // 0: Cast.PlatformIDENUM (AuthStatusENUM)(0), // 1: Cast.AuthStatusENUM (WorkActionENUM)(0), // 2: Cast.WorkActionENUM @@ -16170,11 +17661,1969 @@ func file_pb_fiee_cast_proto_init() { if File_pb_fiee_cast_proto != nil { return } + if !protoimpl.UnsafeEnabled { + file_pb_fiee_cast_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*AsInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaUserListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaUserInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaUserListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateMediaAccountReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateMediaAccountResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UnbindManagerReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UnbindManagerResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BindManagerReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkImageReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkImageResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkVideoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkVideoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaInfoByPlatformReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaInfoByPlatformResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkDetailReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkLogInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkDetailResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateStatusReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaAccountsReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaAccountsResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaWorksReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaWorksResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RePublishReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RePublishResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DelWorkReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ImportWorkBatchReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ImportWorkBatchResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PlatformInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkPlatformInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkPlatformInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkPublishLogReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshWorkListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshWorkListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthAccountReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthAccountResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthAccountV2Req); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthAccountV2Resp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthYoutubeTokenReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthYoutubeTokenResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthCodeToTokenReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*OAuthCodeToTokenResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateOAuthReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshTokenReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshTokenResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishMediaInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[57].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishMediaInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[58].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ToolsReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[59].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateVideoScriptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[60].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateVideoScriptResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[61].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetVideoScriptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[62].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetVideoScriptResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[63].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListVideoScriptsReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[64].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VideoScriptInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[65].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListVideoScriptsResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[66].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteVideoScriptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[67].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateVideoScriptBatchReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[68].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateVideoScriptBatchResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[69].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateScriptStatusReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[70].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SetLayoutReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[71].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetLayoutReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[72].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetLayoutResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[73].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdatePromptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[74].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeletePromptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[75].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetPromptReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[76].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetPromptResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[77].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListPromptsReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[78].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PromptInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[79].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListPromptsResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[80].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdatePromptBatchReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[81].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdatePromptBatchResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[82].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[83].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateArtistReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[84].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateArtistResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[85].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetArtistReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[86].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetArtistResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[87].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateWorkAnalysisReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[88].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateWorkAnalysisResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[89].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkAnalysisReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[90].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkAnalysisStatusReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[91].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisLogInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[92].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisFansSeries); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[93].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisViewsSeries); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[94].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisLikesSeries); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[95].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisCommentsSeries); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[96].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisSharesSeries); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[97].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisTopCities); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[98].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisMostActiveDay); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[99].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisBestPostTime); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[100].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisExtra); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[101].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetWorkAnalysisDetailReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[102].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetLatestWorkAnalysisReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[103].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetWorkAnalysisResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[104].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetWorkAnalysisDetailResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[105].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkAnalysisReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[106].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkAnalysisInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[107].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkAnalysisResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[108].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteWorkAnalysisReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[109].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistDataListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[110].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistDataRespItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[111].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistDataListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[112].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaDataListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[113].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaDataListItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[114].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaDataListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[115].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DataOverviewReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[116].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DataOverviewResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[117].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistMetricsSeriesReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[118].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistMetricsSeriesResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[119].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistMetricsDailyWindowReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[120].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SimplePoint); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[121].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BestPostTimePoint); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[122].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MostActiveDayPoint); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[123].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistMetricsDailyWindowResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[124].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TobeConfirmedListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[125].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TobeConfirmedItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[126].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TobeConfirmedListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[127].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateWorkAnalysisApprovalIDReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[128].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaMetricsDailyItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[129].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertMediaMetricsDailyBatchReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[130].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertMediaMetricsDailyBatchResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[131].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkMetricsDailyItem); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[132].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertWorkMetricsDailyBatchReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[133].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertWorkMetricsDailyBatchResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[134].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetArtistAyrShareInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[135].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtistAyrShareInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[136].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetArtistAyrShareInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[137].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkPlatformInfoReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[138].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkPlatformInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[139].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkPlatformInfoResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[140].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListMediaMetricsDailyReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[141].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaMetricsDailyInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[142].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListMediaMetricsDailyResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[143].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkMetricsDailyReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[144].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkMetricsDailyInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[145].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListWorkMetricsDailyResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[146].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertTaskListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[147].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpsertTaskListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[148].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetTaskListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[149].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*TaskListInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[150].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetTaskListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[151].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListTaskListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[152].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ListTaskListResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[153].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteTaskListReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[154].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CalculateMediaMetricsByWorksReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[155].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CalculateMediaMetricsByWorksResp); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[156].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*WorkListResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[159].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaAccountsResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[160].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*MediaWorksResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[161].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*PublishResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[162].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshWorkListResp_Info); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[163].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*RefreshWorkListResp_Info_PlatformInfo); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_fiee_cast_proto_msgTypes[164].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateOAuthReq_Info); 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: unsafe.Slice(unsafe.StringData(file_pb_fiee_cast_proto_rawDesc), len(file_pb_fiee_cast_proto_rawDesc)), + RawDescriptor: file_pb_fiee_cast_proto_rawDesc, NumEnums: 7, NumMessages: 165, NumExtensions: 0, @@ -16186,6 +19635,7 @@ func file_pb_fiee_cast_proto_init() { MessageInfos: file_pb_fiee_cast_proto_msgTypes, }.Build() File_pb_fiee_cast_proto = out.File + file_pb_fiee_cast_proto_rawDesc = nil file_pb_fiee_cast_proto_goTypes = nil file_pb_fiee_cast_proto_depIdxs = nil } diff --git a/api/cast/cast.pb.validate.go b/api/cast/cast.pb.validate.go index 2ca63cb..0c50844 100644 --- a/api/cast/cast.pb.validate.go +++ b/api/cast/cast.pb.validate.go @@ -73,7 +73,7 @@ type AsInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m AsInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -199,7 +199,7 @@ type MediaUserListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaUserListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -346,6 +346,8 @@ func (m *MediaUserInfo) validate(all bool) error { } } + // no validation rules for ArtistSubNum + if len(errors) > 0 { return MediaUserInfoMultiError(errors) } @@ -360,7 +362,7 @@ type MediaUserInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaUserInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -496,7 +498,7 @@ type MediaUserListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaUserListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -620,7 +622,7 @@ type UpdateMediaAccountReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateMediaAccountReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -724,7 +726,7 @@ type UpdateMediaAccountRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateMediaAccountRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -828,7 +830,7 @@ type UnbindManagerReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UnbindManagerReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -930,7 +932,7 @@ type UnbindManagerRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UnbindManagerRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1038,7 +1040,7 @@ type BindManagerReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m BindManagerReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1297,6 +1299,8 @@ func (m *UpdateWorkImageReq) validate(all bool) error { } } + // no validation rules for From + if len(errors) > 0 { return UpdateWorkImageReqMultiError(errors) } @@ -1311,7 +1315,7 @@ type UpdateWorkImageReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkImageReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1415,7 +1419,7 @@ type UpdateWorkImageRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkImageRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1529,7 +1533,7 @@ type PublishConfigMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishConfigMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1804,7 +1808,7 @@ type UpdateWorkVideoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkVideoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -1908,7 +1912,7 @@ type UpdateWorkVideoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkVideoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2015,7 +2019,7 @@ type MediaInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2144,7 +2148,7 @@ type MediaInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2248,7 +2252,7 @@ type MediaInfoByPlatformReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaInfoByPlatformReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2379,7 +2383,7 @@ type MediaInfoByPlatformRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaInfoByPlatformRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2542,7 +2546,7 @@ type WorkListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2677,7 +2681,7 @@ type WorkListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2779,7 +2783,7 @@ type WorkDetailReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkDetailReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -2894,7 +2898,7 @@ type WorkLogInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkLogInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3245,7 +3249,7 @@ type WorkDetailRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkDetailRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3365,7 +3369,7 @@ type UpdateStatusReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateStatusReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3467,7 +3471,7 @@ type MediaAccountsReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaAccountsReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3601,7 +3605,7 @@ type MediaAccountsRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaAccountsRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3709,7 +3713,7 @@ type MediaWorksReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaWorksReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3845,7 +3849,7 @@ type MediaWorksRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaWorksRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -3944,7 +3948,7 @@ type PublishReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4077,7 +4081,7 @@ type PublishRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4176,7 +4180,7 @@ type RePublishReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RePublishReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4278,7 +4282,7 @@ type RePublishRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RePublishRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4379,7 +4383,7 @@ type DelWorkReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DelWorkReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4480,7 +4484,7 @@ type WorkInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4591,7 +4595,7 @@ type WorkInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4693,7 +4697,7 @@ type ArtistInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4791,6 +4795,8 @@ func (m *ArtistInfoResp) validate(all bool) error { // no validation rules for SubNum + // no validation rules for BlueskyEffectiveCount + if len(errors) > 0 { return ArtistInfoRespMultiError(errors) } @@ -4805,7 +4811,7 @@ type ArtistInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -4939,7 +4945,7 @@ type ImportWorkBatchReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ImportWorkBatchReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5079,7 +5085,7 @@ type ImportWorkBatchRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ImportWorkBatchRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5198,7 +5204,7 @@ type PlatformInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PlatformInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5332,7 +5338,7 @@ type UpdateWorkPlatformInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkPlatformInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5434,7 +5440,7 @@ type UpdateWorkPlatformInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkPlatformInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5544,7 +5550,7 @@ type UpdateWorkPublishLogReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkPublishLogReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5648,7 +5654,7 @@ type RefreshWorkListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshWorkListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5784,7 +5790,7 @@ type RefreshWorkListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshWorkListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5888,7 +5894,7 @@ type OAuthAccountReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthAccountReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -5990,7 +5996,7 @@ type OAuthAccountRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthAccountRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6092,7 +6098,7 @@ type OAuthAccountV2ReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthAccountV2ReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6202,7 +6208,7 @@ type OAuthAccountV2RespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthAccountV2RespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6308,7 +6314,7 @@ type OAuthYoutubeTokenReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthYoutubeTokenReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6416,7 +6422,7 @@ type OAuthYoutubeTokenRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthYoutubeTokenRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6524,7 +6530,7 @@ type OAuthCodeToTokenReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthCodeToTokenReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6626,7 +6632,7 @@ type OAuthCodeToTokenRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m OAuthCodeToTokenRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6762,7 +6768,7 @@ type UpdateOAuthReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateOAuthReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6868,7 +6874,7 @@ type RefreshTokenReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshTokenReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -6972,7 +6978,7 @@ type RefreshTokenRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshTokenRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7078,7 +7084,7 @@ type PublishMediaInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishMediaInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7188,7 +7194,7 @@ type PublishMediaInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishMediaInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7291,7 +7297,7 @@ type ToolsReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ToolsReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7409,7 +7415,7 @@ type UpdateVideoScriptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateVideoScriptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7513,7 +7519,7 @@ type UpdateVideoScriptRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateVideoScriptRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7617,7 +7623,7 @@ type GetVideoScriptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetVideoScriptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7745,7 +7751,7 @@ type GetVideoScriptRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetVideoScriptRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7865,7 +7871,7 @@ type ListVideoScriptsReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListVideoScriptsReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -7995,7 +8001,7 @@ type VideoScriptInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m VideoScriptInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8131,7 +8137,7 @@ type ListVideoScriptsRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListVideoScriptsRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8235,7 +8241,7 @@ type DeleteVideoScriptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DeleteVideoScriptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8371,7 +8377,7 @@ type UpdateVideoScriptBatchReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateVideoScriptBatchReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8511,7 +8517,7 @@ type UpdateVideoScriptBatchRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateVideoScriptBatchRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8621,7 +8627,7 @@ type UpdateScriptStatusReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateScriptStatusReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8728,7 +8734,7 @@ type SetLayoutReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m SetLayoutReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8831,7 +8837,7 @@ type GetLayoutReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetLayoutReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -8935,7 +8941,7 @@ type GetLayoutRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetLayoutRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9041,7 +9047,7 @@ type UpdatePromptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdatePromptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9143,7 +9149,7 @@ type DeletePromptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DeletePromptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9244,7 +9250,7 @@ type GetPromptReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetPromptReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9352,7 +9358,7 @@ type GetPromptRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetPromptRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9466,7 +9472,7 @@ type ListPromptsReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListPromptsReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9581,7 +9587,7 @@ type PromptInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PromptInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9717,7 +9723,7 @@ type ListPromptsRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListPromptsRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9851,7 +9857,7 @@ type UpdatePromptBatchReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdatePromptBatchReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -9991,7 +9997,7 @@ type UpdatePromptBatchRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdatePromptBatchRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10100,7 +10106,7 @@ type ArtistInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10231,7 +10237,7 @@ type UpdateArtistReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateArtistReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10333,7 +10339,7 @@ type UpdateArtistRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateArtistRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10434,7 +10440,7 @@ type GetArtistReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetArtistReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10565,7 +10571,7 @@ type GetArtistRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetArtistRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10713,7 +10719,7 @@ type CreateWorkAnalysisReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m CreateWorkAnalysisReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10817,7 +10823,7 @@ type CreateWorkAnalysisRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m CreateWorkAnalysisRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -10961,7 +10967,7 @@ type UpdateWorkAnalysisReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkAnalysisReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11079,7 +11085,7 @@ type UpdateWorkAnalysisStatusReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkAnalysisStatusReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11200,7 +11206,7 @@ type WorkAnalysisLogInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisLogInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11318,7 +11324,7 @@ type WorkAnalysisFansSeriesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisFansSeriesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11436,7 +11442,7 @@ type WorkAnalysisViewsSeriesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisViewsSeriesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11554,7 +11560,7 @@ type WorkAnalysisLikesSeriesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisLikesSeriesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11672,7 +11678,7 @@ type WorkAnalysisCommentsSeriesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisCommentsSeriesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11790,7 +11796,7 @@ type WorkAnalysisSharesSeriesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisSharesSeriesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -11900,7 +11906,7 @@ type WorkAnalysisTopCitiesMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisTopCitiesMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -12010,7 +12016,7 @@ type WorkAnalysisMostActiveDayMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisMostActiveDayMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -12120,7 +12126,7 @@ type WorkAnalysisBestPostTimeMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisBestPostTimeMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -12232,7 +12238,7 @@ type WorkAnalysisExtraMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisExtraMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -12336,7 +12342,7 @@ type GetWorkAnalysisDetailReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetWorkAnalysisDetailReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -12440,7 +12446,7 @@ type GetLatestWorkAnalysisReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetLatestWorkAnalysisReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -12834,7 +12840,7 @@ type GetWorkAnalysisRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetWorkAnalysisRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13291,7 +13297,7 @@ type GetWorkAnalysisDetailRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetWorkAnalysisDetailRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13415,7 +13421,7 @@ type ListWorkAnalysisReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListWorkAnalysisReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13547,7 +13553,7 @@ type WorkAnalysisInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkAnalysisInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13683,7 +13689,7 @@ type ListWorkAnalysisRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListWorkAnalysisRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13787,7 +13793,7 @@ type DeleteWorkAnalysisReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DeleteWorkAnalysisReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -13905,7 +13911,7 @@ type ArtistDataListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistDataListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14045,7 +14051,7 @@ type ArtistDataRespItemMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistDataRespItemMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14183,7 +14189,7 @@ type ArtistDataListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistDataListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14295,7 +14301,7 @@ type MediaDataListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaDataListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14425,7 +14431,7 @@ type MediaDataListItemMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaDataListItemMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14563,7 +14569,7 @@ type MediaDataListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaDataListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14667,7 +14673,7 @@ type DataOverviewReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DataOverviewReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14807,7 +14813,7 @@ type DataOverviewRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DataOverviewRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -14919,7 +14925,7 @@ type ArtistMetricsSeriesReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistMetricsSeriesReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15224,7 +15230,7 @@ type ArtistMetricsSeriesRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistMetricsSeriesRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15332,7 +15338,7 @@ type ArtistMetricsDailyWindowReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistMetricsDailyWindowReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15438,7 +15444,7 @@ type SimplePointMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m SimplePointMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15542,7 +15548,7 @@ type BestPostTimePointMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m BestPostTimePointMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15648,7 +15654,7 @@ type MostActiveDayPointMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MostActiveDayPointMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -15998,7 +16004,7 @@ type ArtistMetricsDailyWindowRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistMetricsDailyWindowRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16107,7 +16113,7 @@ type TobeConfirmedListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m TobeConfirmedListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16241,7 +16247,7 @@ type TobeConfirmedItemMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m TobeConfirmedItemMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16379,7 +16385,7 @@ type TobeConfirmedListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m TobeConfirmedListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16485,7 +16491,7 @@ type UpdateWorkAnalysisApprovalIDReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateWorkAnalysisApprovalIDReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16626,7 +16632,7 @@ type MediaMetricsDailyItemMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaMetricsDailyItemMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16762,7 +16768,7 @@ type UpsertMediaMetricsDailyBatchReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpsertMediaMetricsDailyBatchReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -16869,7 +16875,7 @@ type UpsertMediaMetricsDailyBatchRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpsertMediaMetricsDailyBatchRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17008,7 +17014,7 @@ type WorkMetricsDailyItemMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkMetricsDailyItemMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17144,7 +17150,7 @@ type UpsertWorkMetricsDailyBatchReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpsertWorkMetricsDailyBatchReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17249,7 +17255,7 @@ type UpsertWorkMetricsDailyBatchRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpsertWorkMetricsDailyBatchRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17362,7 +17368,7 @@ type GetArtistAyrShareInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetArtistAyrShareInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17482,7 +17488,7 @@ type ArtistAyrShareInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ArtistAyrShareInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17620,7 +17626,7 @@ type GetArtistAyrShareInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetArtistAyrShareInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17728,7 +17734,7 @@ type ListWorkPlatformInfoReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListWorkPlatformInfoReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17860,7 +17866,7 @@ type WorkPlatformInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkPlatformInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -17996,7 +18002,7 @@ type ListWorkPlatformInfoRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListWorkPlatformInfoRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -18108,7 +18114,7 @@ type ListMediaMetricsDailyReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListMediaMetricsDailyReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -18252,7 +18258,7 @@ type MediaMetricsDailyInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaMetricsDailyInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -18390,7 +18396,7 @@ type ListMediaMetricsDailyRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListMediaMetricsDailyRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -18502,7 +18508,7 @@ type ListWorkMetricsDailyReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListWorkMetricsDailyReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -18644,7 +18650,7 @@ type WorkMetricsDailyInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkMetricsDailyInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -18782,7 +18788,7 @@ type ListWorkMetricsDailyRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListWorkMetricsDailyRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -18896,7 +18902,7 @@ type UpsertTaskListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpsertTaskListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -19002,7 +19008,7 @@ type UpsertTaskListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpsertTaskListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -19106,7 +19112,7 @@ type GetTaskListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetTaskListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -19221,7 +19227,7 @@ type TaskListInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m TaskListInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -19352,7 +19358,7 @@ type GetTaskListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m GetTaskListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -19462,7 +19468,7 @@ type ListTaskListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListTaskListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -19600,7 +19606,7 @@ type ListTaskListRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m ListTaskListRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -19702,7 +19708,7 @@ type DeleteTaskListReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m DeleteTaskListReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -19806,7 +19812,7 @@ type CalculateMediaMetricsByWorksReqMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m CalculateMediaMetricsByWorksReqMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -19913,7 +19919,7 @@ type CalculateMediaMetricsByWorksRespMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m CalculateMediaMetricsByWorksRespMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -20066,7 +20072,7 @@ type WorkListResp_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m WorkListResp_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -20180,7 +20186,7 @@ type MediaAccountsResp_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaAccountsResp_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -20300,7 +20306,7 @@ type MediaWorksResp_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m MediaWorksResp_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -20406,7 +20412,7 @@ type PublishResp_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m PublishResp_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -20544,7 +20550,7 @@ type RefreshWorkListResp_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshWorkListResp_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -20660,7 +20666,7 @@ type RefreshWorkListResp_Info_PlatformInfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m RefreshWorkListResp_Info_PlatformInfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } @@ -20773,7 +20779,7 @@ type UpdateOAuthReq_InfoMultiError []error // Error returns a concatenation of all the error messages it wraps. func (m UpdateOAuthReq_InfoMultiError) Error() string { - msgs := make([]string, 0, len(m)) + var msgs []string for _, err := range m { msgs = append(msgs, err.Error()) } From bd7e0e416928e83f3d8d9fbdb27f9800ce084dc5 Mon Sep 17 00:00:00 2001 From: cjy Date: Mon, 29 Dec 2025 13:53:02 +0800 Subject: [PATCH 11/19] =?UTF-8?q?fix:=20=E9=87=8D=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E6=89=B9=E9=87=8F=E5=8F=91=E5=B8=83=E5=9B=BE=E6=96=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/service/cast/work.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkg/service/cast/work.go b/pkg/service/cast/work.go index 4cee945..38e4f85 100644 --- a/pkg/service/cast/work.go +++ b/pkg/service/cast/work.go @@ -1210,8 +1210,8 @@ func ImportWorkBatch(ctx *gin.Context) { temp.ArtistPhone = subInfoResp.TelNum temp.ArtistPhoneAreaCode = subInfoResp.TelAreaCode } - if len(row) > 5 { - temp.Title = utils.CleanString(row[5]) + if len(row) > 7 { + temp.Title = utils.CleanString(row[7]) ok, _err := check.SecurityText(temp.Title) if _err != nil { temp.Remark = _err.Error() @@ -1224,8 +1224,8 @@ func ImportWorkBatch(ctx *gin.Context) { break } } - if len(row) > 6 { - temp.Content = utils.CleanString(row[6]) + if len(row) > 8 { + temp.Content = utils.CleanString(row[8]) if temp.Content != "" { ok, _err := check.SecurityText(temp.Content) if _err != nil { From 55828e25775a6d5a79da555fc3cfa6515ee3d859 Mon Sep 17 00:00:00 2001 From: cjy Date: Tue, 23 Dec 2025 14:30:58 +0800 Subject: [PATCH 12/19] =?UTF-8?q?feat:=20=E4=BD=9C=E5=93=81=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=AF=BC=E5=87=BA=E5=A2=9E=E5=8A=A0=E4=B8=A4=E4=B8=AA?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/logic/cast/work.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkg/logic/cast/work.go b/pkg/logic/cast/work.go index 17aaaec..97fe9a9 100644 --- a/pkg/logic/cast/work.go +++ b/pkg/logic/cast/work.go @@ -24,7 +24,7 @@ func (w *Work) ExportExcelWorkList(data []*cast.WorkListResp_Info) (*excelize.Fi // 表头 headers := []interface{}{ - "艺人", "手机号", "用户编号", "作品标题", "脚本", "作品类型", "类型", "Ins", "Tiktok", "DM", "作品状态", "验收确认类型", + "艺人", "手机号", "用户编号", "作品标题", "脚本", "作品类型", "类型", "Ins", "Tiktok", "DM", "Youtube", "Bulesky", "作品状态", "验收确认类型", "说明", "发布账号", "管理人", "上传时间", "待艺人确认时间", "验收确认通过时间", "发布成功时间", } if err := sw.SetRow("A1", headers); err != nil { @@ -72,6 +72,8 @@ func (w *Work) ExportExcelWorkList(data []*cast.WorkListResp_Info) (*excelize.Fi modelCast.PlatformPublishStatusMM[cast.PublishStatusENUM(info.InsStatus)], modelCast.PlatformPublishStatusMM[cast.PublishStatusENUM(info.TiktokStatus)], modelCast.PlatformPublishStatusMM[cast.PublishStatusENUM(info.DmStatus)], + modelCast.PlatformPublishStatusMM[cast.PublishStatusENUM(info.YoutubeStatus)], + modelCast.PlatformPublishStatusMM[cast.PublishStatusENUM(info.BlueskyStatus)], modelCast.WorkStatusMM[int(info.WorkStatus)], modelCast.ConfirmTypeMM[int(info.ConfirmType)], info.Remark, From 7a016ea15afa647353a14213f36fe7ea973ffb04 Mon Sep 17 00:00:00 2001 From: cjy Date: Wed, 24 Dec 2025 10:55:42 +0800 Subject: [PATCH 13/19] =?UTF-8?q?feat:=20=E6=89=B9=E9=87=8F=E5=AF=BC?= =?UTF-8?q?=E5=85=A5=E8=B4=A6=E5=8F=B7=E5=A2=9E=E5=8A=A0=E4=B8=A4=E4=B8=AA?= =?UTF-8?q?=E5=B9=B3=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/自媒体账号导入模板.xlsx | Bin 10644 -> 10702 bytes data/自媒体账号导入模板_old.xlsx | Bin 0 -> 10644 bytes pkg/service/cast/media.go | 30 +++++++++++++++++++++++------- 3 files changed, 23 insertions(+), 7 deletions(-) create mode 100644 data/自媒体账号导入模板_old.xlsx diff --git a/data/自媒体账号导入模板.xlsx b/data/自媒体账号导入模板.xlsx index c0819641856a43058eafbda983ed10f6ea3efe01..e96da0fc53478793d96a357cd016df8c4da4e3ec 100644 GIT binary patch delta 3256 zcmZ9Oc{J327sqF8W8cX#_85Cagkh`^gF%H9vW<~_8GDngF_wIlDMj|5$QH7%$(DUj z@iS!K>xY`bqu=wK=Xajx^VdD+F6VRZx%d6L8CFA9l`p`!jJ*W|Lof*BL;(V^fj}S^ zA7_-mk8i*wXCHr8`4BJ9$n?ASyM#I8b|EB|4wAkzLNdKzE8708f=$oI9er~aZF?F0~Qg+OB@{Ikb>YhmFVLx+_*K>}wg3I`QS|wS(%*Y55#i zYh=BBE?eM~ENnySZZb{D_*w|__UOOLZ#lZsHS<{0eJ4FlA-Dc**@_l)n|b<9#DRdL zaWC}#-W~s8KL-3}RKk#v6pc${r7I+jLXVCQAAHr+k_`OiSW9}BTZ&J={nJXoO?@+E z*78TUNMxV~t%@n2448=>7avES{1{8-lNsMJ21$EdmLgQPN4h3OQ)VrW8ZW`%-baH)__Wl+ zlhV_v%C-@767F%}6#IIho@5rAN}(8$8WlJ{-IjMu^Nx*j1WfPedUw-?5(HAG1I+1p zaf-iNoP5j9Crg1RGNa`Xvn4Wv{+5v(E*Xuis{=VO8{mSu^*e&0tSTI+2ZZ z2=bHKY7>9aZcY+>#;-6|mP5CTK-G+NmFN%BeQ;{inw6%_f6GlaQ{23lVS4#wYdZ@g zHwn!9dQ(VdsEhDBznPO9TaUYdjIYKK#k0!_qzN4kwJCvxR|lXaz4;bU2Loyj@qPOD z8&IZ(+mACYxird!V44$%YD#+!KKg}rwX0jQEyyaqs=8BXef^%fx@MT-UIlAO`t5Qg zpkjcHN`~tu^hA#d2qJy{}z-{p{vMkigVa=5bv0K2ccb zhdR-%b@CcFgB#Ct)4SBICGIMNRMqY#LXxe9gg2SWfUw>*TZ0$#_!mq&f zO4Hiw+VeBaxsQ46swT0Z(q2n3Y{bxaxJdByS{`DE#`~V|hAedc{nWE^Olyhol1$y; z;GLB=12+}A29fRgVB3X&s(BnC20v0$!ch4&D!~7~zs13&h@Jq)S6%VpBglmB;!o8W zm-sk4hd^}nhg+0CuC2$uipqp;BRu4;oTB)VhTT?%-M7Ox2yvO{^d2VO`+7yz0$f>I zod9+*=Uq~5VM^C#%i{EGyPC?>v*Z{RaGP0dbV_1vZVJ&iu>78KtTWEpi^*I!Oho_& zf78%*R=1}(t1ta)!)ZztSVH_7T?Pm zRD1*?LsKJ?BN&>VS1V~{N!voMo;h;Dl*;D~5Z2yZgQjSbqjzBU7RJm6Mp&6hjM$U@ zL)y*MIaoERc$7IhO9hvZsz!?=mrl?YolnWZo7i7Yi+->JA0#XK(3rOP33NaDXll_)Dm?pkI!3 zb)`%2PMtGR3s?0_ig_#VlnpF&dh%s%4-B@}HCANLB2XrjRDhNg-#ZkoF+FbR#Zr&Z zx!&=d>mBF0-i3Hx3UI&Y@9JU|=#TM62mId0pixDWE^W^C{kwY_F>~96k3`c8P+qwO zpL6?06itU#6dIC3gPpXZ)DxKVXj4S*zT~9WS<6)P(u#vUGSdA>ItyurpabQJMj9|F z)DUvQd)-Lv(<<0iiK78$hP%r%Vzu%SQb^MWU;R8$#3xh1wV67;b~hl(_ai&YT0 zY}TUXnBpqfgwm^fMwUcsR(4S$tB_(M0)MAx`;f0i zBQV@Kd~B_I;M+!|y=GBJxb(BsZwC$ZC%NUD+a6rCy1Wy&S*I;O7N%KQZjKwVUmZLR zDtj>Xi{^Jre>aa76mLee5L6(y5%x;K6aXa)b8t#`aWG;Qzkl{y1Yr0 zoznAz`_*y`p1nQ^s%YF9GBV7}>%+2knG_!+M7VhntQSXEwt^i+Qf7nS{@y3v2oSGepdBFq&nOH~FJEga$5=6p$=Wg-(=@|ycbl~Xb9 z&qL)GW_CBZFxBtUvXtqr#HRn`WLOV37zhk$>bRhI+&#JJ?!I3^Kp9qSN%s#C=NEqD? zpA`BqhN^gFNj!Q~B=tCqk!eHEijRy-zn-{)I2say=a7F{$U^>dmts=ubLwYW8rIU( zI5{9Mt`D%xYh)D}Mw%L@zV9?2cuC%@ScUEOP*}WAWpBs76}Cs4pI$y4BmoOKNG-A* zGG5(@QNTOVDqTxm?d+IEkvf~n%_wFE5l*I)RBiZ9$c&pJ@%UX4(UP!vNp-{Ex*fx6 zbESTwf(IKLXL3RaUb3^&Kp&+nN?gpPUE*fb8BIv&frJM6eU3#B3*mRg*FYRLNv~C5 ziQH)~BeIPa*}xpkqUqy^Hh3fuWlOBVH- zY>sO|5n<0VRz<*+Mo|g-=;G_4f=q8%nO1`z91_=on3x_4d?_#?D0xZou{Mil4pXWS zk23Ad#P``f!Xx{Zhso_P3+&&(EB~CJ1VfJuEe1;`dM#(n1*sbv`zNjf%& zF7RPF-mr}fSdLKzgyt@{Jm6>}P>rSV3+S8{bqN;SaO0W)PsEtp4H{GaRcU zMjxidsJ_g6lKUBTFY$&iuOx#WSv79&mSBWQe!KSoVs;KwgFRvl%D4TB@m_mzbIyGd zi&gaqL!*PI-EU5MsIT6ol~o@(*m#oXur<=_Q933HvFqGqOMDQt);^l9vs~JH$p6FE z&dodFubGP|e#WHaKNtZ@)%RyC?{b9$slZVHx41UdoG=Ik>`8C~zT$k~GayMEp!@IT z4!|T(U3`5iHt0hEo7Zgh-?k6wU8OhglZW45W-kTB(js-go@Xm zB^k10EqmFwSNGoY-gDmPobPhZ=lMQ=e9!ZIKA%3TRI686U>tRhPNppw1ahGQfjB@Q zkei>YMS$NQfeNmE0e3Fk_rXM@yfbcB+0n+d{uyyR6|1UIqkl;ninH&nefpSjCCUi459D#$(;#re>5rkZjK`UYK(u7~sYC#Sj;2^sitpg2lCuSi+J>lx8`f%Pwl!O z@1gnBq*!eRE@ii46;!8d#PQ(1{j15&dz`17?bvHY?f4xuQ85gwGeJH3;c(BYW6HvW z8o~_%h%)>&;?&h(#^_MXF*r2{Bu@|cF$&<6e*b-f%}u{?MeYbv?J4_y%YLLTn4^sM zvAP#f7VJQ}Hp~9PDEmun?cug&6`+&Om`2Ckr?HqD9uZOVCZbnmv9oBlfZk~Opu@#L z>h`S_y{#XMJKiYaVlR#%Q||Lpex}Kkkwx=v<4(RbWwMAYx13bz=zQBx>(uIOIh(RA z-#vo1pg%D-)noh4`>p_H3XP(B-JwzsIUj{cCWnuXD|R;_*5@;?Qs>`$oMyEjAX_Q! zDA6R+--uONu8+;oUbeQGw=E7R#1;7a+vZJwa1D#Fu%8nugWr(vWzaJAt0QQXp~YGx zZ*ZnGJ6DNttO#}Z^~nYAPzHl`JCu37cnfXftr}X*;-3oc@i<^#`he;r5>%1ZYTeaI z7}Qb$Qic{Q5&7BR;^`!cl0^-=T!)~_|{Ww=l@c?d02Ago*AL{d1i)Rh_P zH5Fm3m%h;)en>n|J<6{=72|FwQ}@)+jh^5KTig~AH#2kciB|XgT}NH*Q-LI7mhL;(GK6oS~O_>?4j*@RaKASt~J_I z=AmWbxoaXql4eHoIZmm%;mTPAN+@_AwhyB`DxLUuy?R<7hi5E9^*2NN#%m9>O&$r#w9G4&0L4CVq)X{#Wof7agMtj4o_O)!PjL( z+VrlyZkvwIU<~@a96$royS6d8Y^HhBs_+mxOD3WnAZ8Uq8QUE0s7!_-=t4wCyM^RM zk%!j?Sk);s(vvmo)@z~p*#zmN?cSHEA($^n`&6=Ih_0(HWues}Wo9no9w$Tv_X#^d z^@#o8_$t3!@EaIem95z7Q%V=?gpZ3!fT?Sr!B3Ab)GPix{QZd$TQq`1d*Irkvxeo*7pE23mdkBbY;^F;O83g|@*LcSQe zSm0ZFUT-TA=p{rn7Y=8353itiEj^ZWdGpE{{0H*+jkqZKnb+gZ3vnl-7f{o9BYpP- z=FK$7#QZZM=2j^3u6Rdj;Jzr7y~L7fY0Obj!J~elZQnylB8ksZD#>^`2vrZCgxbr- zT*sJvJDLO)etQ1Xa_5A~BkyA1o2HiwHt*xV5sp%)UOy04@FjOwmKpc|-iE+J) z%?$@L6}>TqKwUkq5t07A;m7-rjVT9n}%w^`Log z&*hfUc39FDPgLXpxQ_t$z%N~Nr5Vw?p$vwVTGObpmq`v5-&P&O3AmCwA1z))6y-Ti zqg==bo}H@mN)BCn)`~8I9Pb0X#UpYyEgQVM^0Ci{%Ew&LX<__KZ7Y}irTG|d^;qTB zL<~{ucW)*0S}bdPlr0%A=ki5!PIKU^Z~H|OlP{&sJX-wYl8A<=%##Xvb4Dr(>9R)} zw%sRQ?gHnHmW>WK9C$~Di|+MTXOaNYotAbc^iRL-PR)eZ5(8!OoWbe+^*I-MI>*Be zArI8PO+P>EsAIIltcwU8CEi@by^pQd^x4qddEQr{9i4hR>!Ug24J(*Zu!x_xzzRmR zwp9KSTy)wgAIXq2I4nevLWK z_GEYd?r2pL|2n5N{BVPS8jR*{a|Xg&+sma1dIa0 ztKppMqKM{e=4X(NjZ`CXO_LYiu8ulUV4X-IW9NlejjMA;hb8DE@ZW0m zyBAo0H^WN;Qjo|90>P|nki12-IK>Y+_6Bj&{Z(JXhu<#AU2Z33(&WTC_Kup3eHB<`ZF)rHP!XPmx zS_tiFnK@~G^tGf2oIY@O)F<@l*YcNdyZrcdB8E=g72xF=Bh#-F$vEMTXO$8f9;a9>?7>h5NLoUU?yV<6esNxm6qD37#Rc^=)b-kMa2-;0MK!G3 z;Mh&{+9Ae|obO}!w<=-b4vs`f`B~yweqX` zXIzN_^8Pv|OElOQe)(%SQa*62@@+2ZjTn>uv8gd=*^0fg28I(jT{!MqH7a8F6r_KB=y-uXpe~=6M@i}g<}`vI&T(TQ1tR)%pJ6Z z0e@XQ{bQ8A7K+ct2YC3}k9AjE3 zh1ozSQN?D%)qp!<27KAjT{(0<=6+9`s2%v3X{Cj_R)C9L1Mp6ahsu};jENcJxL^Zy zY=fnVd%dwmer$W+Z$t#n;SqosMY#pb^_GEVkZ9a;XKF{Ur$Bz_2V&q{)O9W8!4*lyFmaYkHf+cF;}$NDt^W{^WwK)QW1dmd*-J-7O{U|j8-_er*95+!YF-ab z45+=RA1qs4@g4rv*SA(NSXMT2sjrzG9TdGVB5Ck;44yV(TWnzV37;ut@b*&B^!aY_ zEgQE(mVGc`L4_OrDL1*BnWU~a$xCNK2=iuXGS z3=%)v2|ytXCj9S2gFr05!L#@qU*rK6U>aa8KwMUx%9R-)G4lXEvh0w*1R+Y67u*75 z$ZCO0fDu`!(7!Gf1mgd@%0Fd>01mhTl`=gr4LN%cSD->L{&lT^^U(f~`kne;CHTd{ diff --git a/data/自媒体账号导入模板_old.xlsx b/data/自媒体账号导入模板_old.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..c0819641856a43058eafbda983ed10f6ea3efe01 GIT binary patch literal 10644 zcmeHtWmFx@(kSi(cZW@IcMonsgF|q4cV{CZ8<#+EcSvvu?gV#&1a~LF?Ll(y5$^f! z`rhBSUjLYxHB-`4)m2?xRf@8ZPzYd8BUFC%)zkgo1OD;B*v?4N(azq9N%0X3^YI1T zFECKuJ~tOQ7?>pl7#Qkb!3^x}8QpEH(_)8YAXzYjF9MHHEA1vo&}for0>i$%sNUr@ zJ**B$1^{NV&NLV5QN1D6TOtCZ3|6>StSBwyv2ZmAGeobIKvwDg>7+)Sw0e6VXi$%9|+8WBrw{r1+3+0 zxDs`y`Ni=-M2aJV(Y}{CV>Cewfs9#%vp!^U5mnd^+FJPEPOeg>hGCXdGqknoXqa`9 zm#}3k!vLvg7qODN>$chaZNgbbPXDp~DO$Oex>M*FLfjqDsvo}}y(+b+|| zjN5w@c=V{GIA`0)QJ2ihILP+!RR+LPtzk+cplaR$Ryd=L>m-8k52xdv33Ftah_#70src8J__oeU zfweTaBQfy?*@RiaHI$vRVbJRfP~}-V+;q;vW!k$uj1BIqPHkjlkf}i%vD%SVnR>2b z)uJ+EWCMA_`2Luqnlh!r>2Uf z(k#(=_2!njxy2@Zx1cyZ0Sr@8nK>(9UZhtRlD7kv;Ov;yc7JlnBQdZ^qjx@PreetS z=KkdB6nkZ)%cE0qR+_ZZtP0y(_)_+ z`U85WuUu{?@LVH`+0*yc0_1AX&E=b}rN6KA%SG31u}38UAC-XdHzl|@IosJhsi7wJ ztwInpX2_A;ElTdisG~nJw!VQkpa(HxcoARus{{mt#eg%*y&K=wZT*z{%%)BHkJJea zri{?sEYwX@_eA5Sx z&?C0CUKHLkg=?56q5rcNf_xOZyY(;A_-B9@zX9Cr9Ic$pO-!7h`>H?>agR#8i&Q@@2&-<OP;A7%H%PEbsv$uI=ZFJo5&;wjc3X{OLbkNu+mnFwv4pv!KU*5!PD%=w~= z725(kM>XtCU7LK^2mDJcZQn8*up06RcA-j+fy!uWiS2BmmoUEM{xjm-4~r7>AM-up zx_t0US7{8kkj1$?NUG;(m@ozb#9NsD4YguIzH|6SLNOSzAI9Xh3L-uv_pFPMJZOjmcC@gf9Wn8kE1(6ryT(YPqRBQvh6O}t&+>z&d z`zGgxY&AbhLmNuId?M)#%~T>8eu8Y%r>j$uf}1EF6c`tc0cz4SZq!b8?%fJ>Roto}E=Pwc|{=F&=j<_U;w2YJ`16{nR^4a1)D0Na-%F(2Nh?XVU9#Ql_? zD@O6sVoQ^;`?Qr`&I87?Kttl%XN!@1wtL-GhR%~{A`Ke6+2OiH!4oHToLD6llllwV zt35{4j}d_W_fxY0uuS2qd4^b_(`+a%!>z{rwvmTR2-o(8Rar}XU3bfuY8(7SuQIa; zX-AB21v>GoiD~F>dBDRdK5I08WAovY?+Y@+nyj3tmblBMwRCD(|M4AVzctWOE1beJ zL5DGtH58O>Ohs_X=#yiukH70qFK3ILdPQTZh1!Ta{OtwJv?2REcNFRtKn`2eHHC5W z=wlUr%y&1ULocXZLZ|TnKNY{Vi7>~p67GaG=FNpHDkdys!-Ds<6mimJ_&2$Q0#d}` zcq3tJakTf~|JRFv?f)-=|0fs0KX1xUXNSjK+u7X2#^hO83%tHTx`YM;YkBk*PZ8B0 zV84KWZN&$gLs0}An5`5iLZHp>hk&78*D33ot6dSddDXbu-7)D@5W$GMG2fRVVEJcbA8|i}FkXyfr9T(u{C{NjM{# zs^&Bz7N7xuu@b4^*k;f@5YTkmKOC0BHkvY;=7>4viY_+JETsftd6fRM<1Tpk1$1{2 zrlr1=hk`{HUE5f7uHgFyb0y+b@;Nx+i?Fn_6G%K5On7(_e1lxSmErpYqUsNbN)5u( zv3t9Ej2{p|`6dEX8A##MbP1Muu8P|;V6-z1X`ThsMOfGDV924%`JcPT8ni2_Kk`gN zBuhpe4%;>?xEv?m%UW@|4GaYp?k{unZC8}8>`j?|SzYDmTQ0G>lvSd$R3p5@H$JZ6 z@Gj7@Q004}8)PUmzJt#j{+uO41lzmIHRKv+vqAB*f50N)9KCj4Ih0NMZ_yU{G{6 z_2Woazz@I4^M3tyrRqnhP`Z$(^ZhYw&Hx&}*iIL=_tj8=pZA&4@y$eqp5XmL6b|S8 zha;i;tAdf+SJc^g;!G{>r+ZaYOf9$Tb#^3P%dmvV*6tYq4JfW-P5bwh%PB8FRy@SV zGjZF!Vch7{FpI=fM0k8{1WsZ;^)Fq6+(Jbkj=?L24*6=&4F%)6*nXUGJNWm4#$K*{ z2h&k^(nLEP8Gq;JC|KoChst|4v?x*(H#bZlR4(mJtIgs%$e%@>U>^8}9`YFh6fkGGq%}(mtcp24###suzZ(zZUGpM(tW2DCqPHQM6>1in^aHW4-h1|Rn?tS?t2{M;KAytNR@ z|IsDxD4j2uCK<*;@Xd5W4HP>VdJw~2`h<+*%8mt>MGVrXKy5qELQC9}AeM&>Ta965`S9uP zQ-0i)lxzb&Fru8egF?qm^EtBX^>u%!b(+3P(dFkwgmLb%Bg?d;p`F4El@x0` zX~hRmn?%%6SEchfV|qtu|MCbO@4_&?J)tu(GT0oOLiBBtp{NPY%N=%&>A(_Q_38?% zbO-)?RJeK`AYBLKM%YKxLlntlM;bqVB^x!bn&Z0CRGl;RL4uXwCYMcBet)Og;-mc4 z@3X5NCnk)=XUa8F;yaGUy1Gydwn>Y)&oH)A5t}f-f1D& z;PdY3Dp`df6U_7;hGf6O=K!c9$wKfis^<4aFRi32Hw>kJ}o1U(SVJ8V| zV8xJSvBPzsSUk+&tgehT6>6@{9VEehAxrMr`ZITYcl6J$ziiXYTu4rVKrBK&?^J5M6986xY@G-pH<8)o^8Nvw)!y)y{@K- zD7w~tu23cZP^SL?-3D`!HBi0s)kPwYndnu}`2*D7gNo~-tW*e*Hlq*gZ%fXL-QOqPx6o zg-l{Glx#R+ao2Cs28zJu!NxNd5F9xX-{#HA#f`AWg|gYU2zF*Eyu)Y~t~AEHSh7-> zLeBj(qr@^$TFf*8=_CPaVIzeAsf|p?inOc9>57;PwLlqhdsYXZ$*gv??on7aP+(vvzXkSmDmJvUv-%Z$sl2sI`F+6EzY<`H9;H;0 z!upu0YFSJ>G=5;=*alUiPce^|oPT%mRx~q>RgQnrD=I4L2xri4L_E@$Ij;c|+%@!t z#Op5Bl~vqjrZ48q?NS7^=pSXp z>n!`Td2lO!;ifR2%2xGSX_wgEb;cOiK~kkcxi~2^|FNE)5azVKonf~pv59KxXzT5 zHa&5Qhqy0|+BaiIt{}6LB-c0AbtTK6W3}>4aR&m~WgTkt4uO+(cpOyFR$r31EZN>m z;8a6Sz|>ctRlu6gCopU{-uQKyU0OR%#}OWQp&t=*eUVc*?DV|2quiC%we6Uy6!L3W zWNbZ{)|;p56C#k&-~3d6ur7U5pmF;wUM~X);YU42Zd58@V95V6EoTpFlV3J9rDGE{ zFGb`R)#dg{rya4&b~Tj$j8nVuTaEKL5pR*W2!x6UhS^LiN#I)iq9_%Xr^$+9jAB5? z4j_^*;WUuZp0u2|yqRet_e;ek!mU})`C!)?_oAGk8HJ6t+5Jds@&ms|Z8=dxr1LyN zNbOOLiAfc$Y~swBSFPJIv-y^$_!qm?4? z8t$F7-nbz_B?(_Yd6_qC+E0*Z5Z{hpK+YhoaB>$S!3LO|hlKUH&|21LRn+Gn^aDFp z>-bPGW{|!UBXc&k@G*;eExGO=ANl& zxjQN1!8{;mnHa#Oir0k1r_G_&)uuM)n*AZZa@LFGVzMG8ExC0>F&|yr&8y_di@mQH zLPhR|B40P+1>pvb#Jid(P-aL_nDWE16Q+9Wt%Tv--NbG4sk-)~a@wwovIUr^>{+6={o735S)8>{NmY z7kJDqR)@Ww7Q$%>S!&~}R&KblPf4p%r>gQpyWXFdNO^(r%O2WGe2I7q% zGPH7b#(QNo{PE61{4JP98a4YM=vJg-u&>oP>4X#`q~^wVG$@arMk`%ubWp&fws}M2 z4izRgz{ftUMbytfB*7QAV|CX*MBIC=BI~nK9pgijl7yv7!)V$%sH|PvvCAtgtj1A!#@CfJmff zL=qM5Oq7kQW&0qeZ^1a!RJ*C7`kAoPA4_h$R_}G>r+j-kxt1ZF6HQAoX+%f;8OKxt zYE7TI41fsH!CUTKwiI~%6j-e&i5sj@%E1eX4}hJRlmmu|&nWyer~1P42qItJW4C^> zw~ES-|eM0-BHB*UA_vtm^A^5hM~L^aKA*{aHFQbETCRpj$2Z$1L`Rh z*IC|O9h+yKDOR-r4_^k0g#f*a~wz%S4A>aJEpn8<{{wg^H{wGR0@5KKOZOc?`n zsg#$Aja7gd_njvX;S4jbJquq^LD+_I_>CqFD(x{+9texmRYq-C^el^>msRrxqlL9u zNqyDr3f{ag^E+fl*V!tQb(GVyJo|aR<|Fj;(W*3*;Zzse_`mpqe2`rGKlXH< zn$3qhT=F^DzrVy05_(v!W5KIWC8G!>>`JL1=P`Tm<@ddwNCKlIr-f}b=VI8}Ajt@d z?q9+nGnW#vIMz0rU^kMeJ5u#Sl@;xTl6j{m_Awu@%fenbA^-T5f#&1G0-xWp_vxPG zXTr(geD?Ki5Dgbd=;r7C&w(GI1x!NjN7f&SU2JItzIzEVIGt9sre`#fAd20+mI2#& zgIZBV<%jpMdDnlW@RH=7AzxHLDC7m#9gQ?eTB_e|XcB~i5F0?`B17OFDn4bwV^CHU z5d^CLh)RM%FCUnlTNWH-qCqZ>TN4HsE+NJ*foU*HPEL)Fc5h0=3@?(7d=Dn9CiDUK*5FQ|}v9OjSr0IJqr>$aCUh-goML80s8brPNdnVABvGfB1;6yyhqqkVp;Xq?`F+}_6M}?7o{8~W zWZ)EP0bwU*1=1eG$i=A0TW-GRt2=Q(U@rvHx)^!OX4CUEC zv{V9Mf<~FI++1`|)$FlGfN=CH6oCxnC=%Q}xY@}c-;R?44S@a;ZK=7s#r&U^lc2$a zURMCDk2RtpLQ-iskdt0lC~|sx<-*TbK0VoYlj>r0vJkE3u7GpdBLOc5ejnV zj%1#-*%zY~9(pWFrrBiaTy!v-VPcPKlrBI?9WhN1vT{Kmh>|T#f#6As%&UrWmo=wo z5Uyg6M~(Of!47GKM#@;3fLut=)Qk{{U==%N(( z%C66~Md{evU1Kp&smj#k@L`T@@)>UHC zT&$z9KtbL)v#qFS;xI5gBaSYD14nK$p`~S}49Ma-!AWnz7dCWS9q5yLb>vCHDKm$z zUQJAFb+pHfX;%+O@d7Ec_Z|SOypXyN9{lJc@Dh zvBHD@cz-;H{|5W(;qsSso8#IoJD+MiK`lXJJ`Sp_V zGs=ivk7g}jeCT5rc(-gQ9bj-+r>t!7X#%r>*k)U0*zIG`&zgM~he?jF?2%mK3Ie2G zPBBB31BBuUP_ITq*B_eSs&YWLG_ID24sekJPDVpu!*p)&HQO^HAt?IhPe$JN5FC8I z)hEg4%S%e!(oatWu6&|s0vX0T^2hOnoW&vu4U_bfo(8Y!kn^}sJ2CI18I1EJtq(JA zarBq8Cfz~&J#}H{0Zs1ocoHXiT%u1oZf#LJTW1qnXFU}UdlRR(Pp9#k_yOAvW>oQu zglm+TIxH5&qGDQz_kxKG$~&<2=RmP86c41})}yXhl&H|-qjG@Wbgx4lA())J@>pnh z`m%lvrh`f-P<1i;1jy&LF7E|>J1Gb~fg}1e7AXO8MFmV;0_5w$IsKk+)CI^bYQ#~9 zH+yZPuWg&L144YirbV-{Kz~1SJ*uyM=?|Z#X!U7j8QzhlLgch5cgc#1nAW&|&C_7$ zYm$9AZ64fuJQHXx$C(otPrHUsFB8gT9CQ){^xSl7%Rh|BKFJF-ruTNo`eCNPPtH9Et5AA&>o8J%THn=yO+h|ouc%1F^RiZ-^FQDx0Cg2 zD!iT=A>xW~Gpqs?y7t7F2Py)he`blZq?ebV;9shmL^Tson#>o8=P+65q$d zB{&4;uT;|SE~e*NdQ=n`I2h^URg&T#b@rRUKUX}SoYC*`)DV?L`loC9JJaXR=?UjI z)9ycTei_q$WA6xb<8_&wG&m#0EVs??0IS zyCdm2`t$CYKhe=1oyni*fArG)x1WB*_}6&)>5#`H*P|!;ZwP;v(gE3DT-Wo7KKF4? zjDAZAll(7e|KahT(|Mk={F4p{{TH48$Y4IF@H{p1CxtDn-xU5x)co)Noge8J>c7iz ze_tWb3vz#QH2N#rpXIsdQ+}Rz{F6ZQqw{-I(qF~)-zNRk%JX|XX}I9GhM$oCXzcm> z%%8XRJmLP<+Qfh0{@LjBeEQEj82+Tf`q(n`uj&752ET5<`WgQBRJa};#y?Q`RS;K{ Uh5qF@FdnywxW_r~0iL-3ALM3Da{vGU literal 0 HcmV?d00001 diff --git a/pkg/service/cast/media.go b/pkg/service/cast/media.go index 021fd85..554a113 100644 --- a/pkg/service/cast/media.go +++ b/pkg/service/cast/media.go @@ -602,7 +602,7 @@ func ImportMediaAccount(ctx *gin.Context) { excelSetRemark(excelData, line, "艺人不存在") continue } - var tiktokName, insName, dmName string + var tiktokName, insName, dmName, youtubeName, blueskyName string if len(row) >= 3 { tiktokName = strings.TrimSpace(row[2]) } @@ -612,7 +612,13 @@ func ImportMediaAccount(ctx *gin.Context) { if len(row) >= 5 { dmName = strings.TrimSpace(row[4]) } - if tiktokName == "" && insName == "" && dmName == "" { + if len(row) >= 6 { + youtubeName = strings.TrimSpace(row[5]) + } + if len(row) >= 7 { + blueskyName = strings.TrimSpace(row[6]) + } + if tiktokName == "" && insName == "" && dmName == "" && youtubeName == "" && blueskyName == "" { excelSetRemark(excelData, line, "请填写账号") continue } @@ -631,6 +637,16 @@ func ImportMediaAccount(ctx *gin.Context) { excelSetRemark(excelData, line, fmt.Sprintf("%s:%s", dmName, err.Error())) } } + if youtubeName != "" { + if err = updateMediaAccount(youtubeName, cast.PlatformIDENUM_YOUTUBE, subInfoResp, loginInfo); err != nil { + excelSetRemark(excelData, line, fmt.Sprintf("%s:%s", youtubeName, err.Error())) + } + } + if blueskyName != "" { + if err = updateMediaAccount(blueskyName, cast.PlatformIDENUM_BULESKY, subInfoResp, loginInfo); err != nil { + excelSetRemark(excelData, line, fmt.Sprintf("%s:%s", blueskyName, err.Error())) + } + } } // 保存Excel文件到磁盘 resultPath := fmt.Sprintf("./runtime/media/%s", fileName) @@ -654,14 +670,14 @@ func ImportMediaAccount(ctx *gin.Context) { // 记录需要删除的行(从后往前删除,避免行号变化) rowsToDelete := make([]int, 0) for line := 1; line < len(rows); line++ { // 从第2行开始(跳过表头) - remarkCell := fmt.Sprintf("F%d", line+1) + remarkCell := fmt.Sprintf("H%d", line+1) // 备注列已移动到H列 remark, _ := excelData.GetCellValue("Sheet1", remarkCell) if remark == "" { - // F列没有数据,表示成功 + // H列没有数据,表示成功 successCount++ rowsToDelete = append(rowsToDelete, line+1) } else { - // F列有值,表示失败 + // H列有值,表示失败 failCount++ } } @@ -694,11 +710,11 @@ func ImportMediaAccount(ctx *gin.Context) { func excelSetRemark(excelData *excelize.File, line int, remark string) { zap.L().Info("设置备注", zap.Int("line", line), zap.String("remark", remark)) - oldRemark, _ := excelData.GetCellValue("Sheet1", fmt.Sprintf("%s%d", "F", line+1)) + oldRemark, _ := excelData.GetCellValue("Sheet1", fmt.Sprintf("%s%d", "H", line+1)) if oldRemark != "" { remark = fmt.Sprintf("%s\n;%s", oldRemark, remark) } - excelData.SetCellValue("Sheet1", fmt.Sprintf("%s%d", "F", line+1), remark) + excelData.SetCellValue("Sheet1", fmt.Sprintf("%s%d", "H", line+1), remark) } func updateMediaAccount(platformName string, platformId cast.PlatformIDENUM, subInfoResp *accountFiee.UserInfoResponse, loginInfo login.Info) error { From d6c09dcd020d26be231ac33f0962bd61cb9d975b Mon Sep 17 00:00:00 2001 From: cjy Date: Wed, 24 Dec 2025 11:10:55 +0800 Subject: [PATCH 14/19] =?UTF-8?q?=E7=A7=BB=E9=99=A4=E6=97=A0=E7=94=A8?= =?UTF-8?q?=E7=9A=84=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/自媒体账号导入模板_old.xlsx | Bin 10644 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 data/自媒体账号导入模板_old.xlsx diff --git a/data/自媒体账号导入模板_old.xlsx b/data/自媒体账号导入模板_old.xlsx deleted file mode 100644 index c0819641856a43058eafbda983ed10f6ea3efe01..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10644 zcmeHtWmFx@(kSi(cZW@IcMonsgF|q4cV{CZ8<#+EcSvvu?gV#&1a~LF?Ll(y5$^f! z`rhBSUjLYxHB-`4)m2?xRf@8ZPzYd8BUFC%)zkgo1OD;B*v?4N(azq9N%0X3^YI1T zFECKuJ~tOQ7?>pl7#Qkb!3^x}8QpEH(_)8YAXzYjF9MHHEA1vo&}for0>i$%sNUr@ zJ**B$1^{NV&NLV5QN1D6TOtCZ3|6>StSBwyv2ZmAGeobIKvwDg>7+)Sw0e6VXi$%9|+8WBrw{r1+3+0 zxDs`y`Ni=-M2aJV(Y}{CV>Cewfs9#%vp!^U5mnd^+FJPEPOeg>hGCXdGqknoXqa`9 zm#}3k!vLvg7qODN>$chaZNgbbPXDp~DO$Oex>M*FLfjqDsvo}}y(+b+|| zjN5w@c=V{GIA`0)QJ2ihILP+!RR+LPtzk+cplaR$Ryd=L>m-8k52xdv33Ftah_#70src8J__oeU zfweTaBQfy?*@RiaHI$vRVbJRfP~}-V+;q;vW!k$uj1BIqPHkjlkf}i%vD%SVnR>2b z)uJ+EWCMA_`2Luqnlh!r>2Uf z(k#(=_2!njxy2@Zx1cyZ0Sr@8nK>(9UZhtRlD7kv;Ov;yc7JlnBQdZ^qjx@PreetS z=KkdB6nkZ)%cE0qR+_ZZtP0y(_)_+ z`U85WuUu{?@LVH`+0*yc0_1AX&E=b}rN6KA%SG31u}38UAC-XdHzl|@IosJhsi7wJ ztwInpX2_A;ElTdisG~nJw!VQkpa(HxcoARus{{mt#eg%*y&K=wZT*z{%%)BHkJJea zri{?sEYwX@_eA5Sx z&?C0CUKHLkg=?56q5rcNf_xOZyY(;A_-B9@zX9Cr9Ic$pO-!7h`>H?>agR#8i&Q@@2&-<OP;A7%H%PEbsv$uI=ZFJo5&;wjc3X{OLbkNu+mnFwv4pv!KU*5!PD%=w~= z725(kM>XtCU7LK^2mDJcZQn8*up06RcA-j+fy!uWiS2BmmoUEM{xjm-4~r7>AM-up zx_t0US7{8kkj1$?NUG;(m@ozb#9NsD4YguIzH|6SLNOSzAI9Xh3L-uv_pFPMJZOjmcC@gf9Wn8kE1(6ryT(YPqRBQvh6O}t&+>z&d z`zGgxY&AbhLmNuId?M)#%~T>8eu8Y%r>j$uf}1EF6c`tc0cz4SZq!b8?%fJ>Roto}E=Pwc|{=F&=j<_U;w2YJ`16{nR^4a1)D0Na-%F(2Nh?XVU9#Ql_? zD@O6sVoQ^;`?Qr`&I87?Kttl%XN!@1wtL-GhR%~{A`Ke6+2OiH!4oHToLD6llllwV zt35{4j}d_W_fxY0uuS2qd4^b_(`+a%!>z{rwvmTR2-o(8Rar}XU3bfuY8(7SuQIa; zX-AB21v>GoiD~F>dBDRdK5I08WAovY?+Y@+nyj3tmblBMwRCD(|M4AVzctWOE1beJ zL5DGtH58O>Ohs_X=#yiukH70qFK3ILdPQTZh1!Ta{OtwJv?2REcNFRtKn`2eHHC5W z=wlUr%y&1ULocXZLZ|TnKNY{Vi7>~p67GaG=FNpHDkdys!-Ds<6mimJ_&2$Q0#d}` zcq3tJakTf~|JRFv?f)-=|0fs0KX1xUXNSjK+u7X2#^hO83%tHTx`YM;YkBk*PZ8B0 zV84KWZN&$gLs0}An5`5iLZHp>hk&78*D33ot6dSddDXbu-7)D@5W$GMG2fRVVEJcbA8|i}FkXyfr9T(u{C{NjM{# zs^&Bz7N7xuu@b4^*k;f@5YTkmKOC0BHkvY;=7>4viY_+JETsftd6fRM<1Tpk1$1{2 zrlr1=hk`{HUE5f7uHgFyb0y+b@;Nx+i?Fn_6G%K5On7(_e1lxSmErpYqUsNbN)5u( zv3t9Ej2{p|`6dEX8A##MbP1Muu8P|;V6-z1X`ThsMOfGDV924%`JcPT8ni2_Kk`gN zBuhpe4%;>?xEv?m%UW@|4GaYp?k{unZC8}8>`j?|SzYDmTQ0G>lvSd$R3p5@H$JZ6 z@Gj7@Q004}8)PUmzJt#j{+uO41lzmIHRKv+vqAB*f50N)9KCj4Ih0NMZ_yU{G{6 z_2Woazz@I4^M3tyrRqnhP`Z$(^ZhYw&Hx&}*iIL=_tj8=pZA&4@y$eqp5XmL6b|S8 zha;i;tAdf+SJc^g;!G{>r+ZaYOf9$Tb#^3P%dmvV*6tYq4JfW-P5bwh%PB8FRy@SV zGjZF!Vch7{FpI=fM0k8{1WsZ;^)Fq6+(Jbkj=?L24*6=&4F%)6*nXUGJNWm4#$K*{ z2h&k^(nLEP8Gq;JC|KoChst|4v?x*(H#bZlR4(mJtIgs%$e%@>U>^8}9`YFh6fkGGq%}(mtcp24###suzZ(zZUGpM(tW2DCqPHQM6>1in^aHW4-h1|Rn?tS?t2{M;KAytNR@ z|IsDxD4j2uCK<*;@Xd5W4HP>VdJw~2`h<+*%8mt>MGVrXKy5qELQC9}AeM&>Ta965`S9uP zQ-0i)lxzb&Fru8egF?qm^EtBX^>u%!b(+3P(dFkwgmLb%Bg?d;p`F4El@x0` zX~hRmn?%%6SEchfV|qtu|MCbO@4_&?J)tu(GT0oOLiBBtp{NPY%N=%&>A(_Q_38?% zbO-)?RJeK`AYBLKM%YKxLlntlM;bqVB^x!bn&Z0CRGl;RL4uXwCYMcBet)Og;-mc4 z@3X5NCnk)=XUa8F;yaGUy1Gydwn>Y)&oH)A5t}f-f1D& z;PdY3Dp`df6U_7;hGf6O=K!c9$wKfis^<4aFRi32Hw>kJ}o1U(SVJ8V| zV8xJSvBPzsSUk+&tgehT6>6@{9VEehAxrMr`ZITYcl6J$ziiXYTu4rVKrBK&?^J5M6986xY@G-pH<8)o^8Nvw)!y)y{@K- zD7w~tu23cZP^SL?-3D`!HBi0s)kPwYndnu}`2*D7gNo~-tW*e*Hlq*gZ%fXL-QOqPx6o zg-l{Glx#R+ao2Cs28zJu!NxNd5F9xX-{#HA#f`AWg|gYU2zF*Eyu)Y~t~AEHSh7-> zLeBj(qr@^$TFf*8=_CPaVIzeAsf|p?inOc9>57;PwLlqhdsYXZ$*gv??on7aP+(vvzXkSmDmJvUv-%Z$sl2sI`F+6EzY<`H9;H;0 z!upu0YFSJ>G=5;=*alUiPce^|oPT%mRx~q>RgQnrD=I4L2xri4L_E@$Ij;c|+%@!t z#Op5Bl~vqjrZ48q?NS7^=pSXp z>n!`Td2lO!;ifR2%2xGSX_wgEb;cOiK~kkcxi~2^|FNE)5azVKonf~pv59KxXzT5 zHa&5Qhqy0|+BaiIt{}6LB-c0AbtTK6W3}>4aR&m~WgTkt4uO+(cpOyFR$r31EZN>m z;8a6Sz|>ctRlu6gCopU{-uQKyU0OR%#}OWQp&t=*eUVc*?DV|2quiC%we6Uy6!L3W zWNbZ{)|;p56C#k&-~3d6ur7U5pmF;wUM~X);YU42Zd58@V95V6EoTpFlV3J9rDGE{ zFGb`R)#dg{rya4&b~Tj$j8nVuTaEKL5pR*W2!x6UhS^LiN#I)iq9_%Xr^$+9jAB5? z4j_^*;WUuZp0u2|yqRet_e;ek!mU})`C!)?_oAGk8HJ6t+5Jds@&ms|Z8=dxr1LyN zNbOOLiAfc$Y~swBSFPJIv-y^$_!qm?4? z8t$F7-nbz_B?(_Yd6_qC+E0*Z5Z{hpK+YhoaB>$S!3LO|hlKUH&|21LRn+Gn^aDFp z>-bPGW{|!UBXc&k@G*;eExGO=ANl& zxjQN1!8{;mnHa#Oir0k1r_G_&)uuM)n*AZZa@LFGVzMG8ExC0>F&|yr&8y_di@mQH zLPhR|B40P+1>pvb#Jid(P-aL_nDWE16Q+9Wt%Tv--NbG4sk-)~a@wwovIUr^>{+6={o735S)8>{NmY z7kJDqR)@Ww7Q$%>S!&~}R&KblPf4p%r>gQpyWXFdNO^(r%O2WGe2I7q% zGPH7b#(QNo{PE61{4JP98a4YM=vJg-u&>oP>4X#`q~^wVG$@arMk`%ubWp&fws}M2 z4izRgz{ftUMbytfB*7QAV|CX*MBIC=BI~nK9pgijl7yv7!)V$%sH|PvvCAtgtj1A!#@CfJmff zL=qM5Oq7kQW&0qeZ^1a!RJ*C7`kAoPA4_h$R_}G>r+j-kxt1ZF6HQAoX+%f;8OKxt zYE7TI41fsH!CUTKwiI~%6j-e&i5sj@%E1eX4}hJRlmmu|&nWyer~1P42qItJW4C^> zw~ES-|eM0-BHB*UA_vtm^A^5hM~L^aKA*{aHFQbETCRpj$2Z$1L`Rh z*IC|O9h+yKDOR-r4_^k0g#f*a~wz%S4A>aJEpn8<{{wg^H{wGR0@5KKOZOc?`n zsg#$Aja7gd_njvX;S4jbJquq^LD+_I_>CqFD(x{+9texmRYq-C^el^>msRrxqlL9u zNqyDr3f{ag^E+fl*V!tQb(GVyJo|aR<|Fj;(W*3*;Zzse_`mpqe2`rGKlXH< zn$3qhT=F^DzrVy05_(v!W5KIWC8G!>>`JL1=P`Tm<@ddwNCKlIr-f}b=VI8}Ajt@d z?q9+nGnW#vIMz0rU^kMeJ5u#Sl@;xTl6j{m_Awu@%fenbA^-T5f#&1G0-xWp_vxPG zXTr(geD?Ki5Dgbd=;r7C&w(GI1x!NjN7f&SU2JItzIzEVIGt9sre`#fAd20+mI2#& zgIZBV<%jpMdDnlW@RH=7AzxHLDC7m#9gQ?eTB_e|XcB~i5F0?`B17OFDn4bwV^CHU z5d^CLh)RM%FCUnlTNWH-qCqZ>TN4HsE+NJ*foU*HPEL)Fc5h0=3@?(7d=Dn9CiDUK*5FQ|}v9OjSr0IJqr>$aCUh-goML80s8brPNdnVABvGfB1;6yyhqqkVp;Xq?`F+}_6M}?7o{8~W zWZ)EP0bwU*1=1eG$i=A0TW-GRt2=Q(U@rvHx)^!OX4CUEC zv{V9Mf<~FI++1`|)$FlGfN=CH6oCxnC=%Q}xY@}c-;R?44S@a;ZK=7s#r&U^lc2$a zURMCDk2RtpLQ-iskdt0lC~|sx<-*TbK0VoYlj>r0vJkE3u7GpdBLOc5ejnV zj%1#-*%zY~9(pWFrrBiaTy!v-VPcPKlrBI?9WhN1vT{Kmh>|T#f#6As%&UrWmo=wo z5Uyg6M~(Of!47GKM#@;3fLut=)Qk{{U==%N(( z%C66~Md{evU1Kp&smj#k@L`T@@)>UHC zT&$z9KtbL)v#qFS;xI5gBaSYD14nK$p`~S}49Ma-!AWnz7dCWS9q5yLb>vCHDKm$z zUQJAFb+pHfX;%+O@d7Ec_Z|SOypXyN9{lJc@Dh zvBHD@cz-;H{|5W(;qsSso8#IoJD+MiK`lXJJ`Sp_V zGs=ivk7g}jeCT5rc(-gQ9bj-+r>t!7X#%r>*k)U0*zIG`&zgM~he?jF?2%mK3Ie2G zPBBB31BBuUP_ITq*B_eSs&YWLG_ID24sekJPDVpu!*p)&HQO^HAt?IhPe$JN5FC8I z)hEg4%S%e!(oatWu6&|s0vX0T^2hOnoW&vu4U_bfo(8Y!kn^}sJ2CI18I1EJtq(JA zarBq8Cfz~&J#}H{0Zs1ocoHXiT%u1oZf#LJTW1qnXFU}UdlRR(Pp9#k_yOAvW>oQu zglm+TIxH5&qGDQz_kxKG$~&<2=RmP86c41})}yXhl&H|-qjG@Wbgx4lA())J@>pnh z`m%lvrh`f-P<1i;1jy&LF7E|>J1Gb~fg}1e7AXO8MFmV;0_5w$IsKk+)CI^bYQ#~9 zH+yZPuWg&L144YirbV-{Kz~1SJ*uyM=?|Z#X!U7j8QzhlLgch5cgc#1nAW&|&C_7$ zYm$9AZ64fuJQHXx$C(otPrHUsFB8gT9CQ){^xSl7%Rh|BKFJF-ruTNo`eCNPPtH9Et5AA&>o8J%THn=yO+h|ouc%1F^RiZ-^FQDx0Cg2 zD!iT=A>xW~Gpqs?y7t7F2Py)he`blZq?ebV;9shmL^Tson#>o8=P+65q$d zB{&4;uT;|SE~e*NdQ=n`I2h^URg&T#b@rRUKUX}SoYC*`)DV?L`loC9JJaXR=?UjI z)9ycTei_q$WA6xb<8_&wG&m#0EVs??0IS zyCdm2`t$CYKhe=1oyni*fArG)x1WB*_}6&)>5#`H*P|!;ZwP;v(gE3DT-Wo7KKF4? zjDAZAll(7e|KahT(|Mk={F4p{{TH48$Y4IF@H{p1CxtDn-xU5x)co)Noge8J>c7iz ze_tWb3vz#QH2N#rpXIsdQ+}Rz{F6ZQqw{-I(qF~)-zNRk%JX|XX}I9GhM$oCXzcm> z%%8XRJmLP<+Qfh0{@LjBeEQEj82+Tf`q(n`uj&752ET5<`WgQBRJa};#y?Q`RS;K{ Uh5qF@FdnywxW_r~0iL-3ALM3Da{vGU From 68ef35a746f2056f56bc557ccf65947d30469f05 Mon Sep 17 00:00:00 2001 From: cjy Date: Mon, 29 Dec 2025 15:23:33 +0800 Subject: [PATCH 15/19] =?UTF-8?q?fix=EF=BC=9A=E5=8F=91=E5=B8=83=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E4=B8=A4=E4=B8=AA=E5=B9=B3=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/service/cast/work.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkg/service/cast/work.go b/pkg/service/cast/work.go index 38e4f85..19a7da1 100644 --- a/pkg/service/cast/work.go +++ b/pkg/service/cast/work.go @@ -686,6 +686,10 @@ func PostAS(workUuid string) error { pid = 1 case "instagram": pid = 3 + case "youtube": + pid = 2 + case "bluesky": + pid = 5 } publishStatus := cast.PublishStatusENUM_PublishMediaStatus_NO if postInfo.Status == "success" { From 4c1eb8f3db35d48f248d3762d4ef035eb55b3455 Mon Sep 17 00:00:00 2001 From: cjy Date: Tue, 6 Jan 2026 10:10:31 +0800 Subject: [PATCH 16/19] =?UTF-8?q?fix=EF=BC=9A=E6=89=B9=E9=87=8F=E5=AF=BC?= =?UTF-8?q?=E5=85=A5=E5=9B=BE=E6=96=87=E5=A2=9E=E5=8A=A0=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pkg/service/cast/work.go | 54 ++++++++++++++++++++++++---------------- 1 file changed, 32 insertions(+), 22 deletions(-) diff --git a/pkg/service/cast/work.go b/pkg/service/cast/work.go index 19a7da1..b8f1e57 100644 --- a/pkg/service/cast/work.go +++ b/pkg/service/cast/work.go @@ -1347,28 +1347,32 @@ func ImportWorkBatch(ctx *gin.Context) { } // YouTube账号(第F列,row[5]) if len(row) > 5 && utils.CleanString(row[5]) != "" { - mediaInfoResp, err = service.CastProvider.MediaInfo(context.Background(), &cast.MediaInfoReq{ - ArtistUuid: temp.ArtistUuid, - PlatformID: cast.PlatformIDENUM_YOUTUBE, - PlatformUserName: utils.CleanString(row[5]), - }) - if err != nil || mediaInfoResp.Info.MediaAccountUuid == "" { - temp.Remark = fmt.Sprintf("YouTube账号名不存在") - zap.L().Error("CastProvider.MediaInfo", zap.Error(err)) - req.ImageWorks = append(req.ImageWorks, temp) - continue - } - temp.PublishConfig1 = &cast.PublishConfig{ - ForbidComment: 1, - PublicType: 1, - CanJoin: 1, - CanQuote: 1, - CanComment: 1, - IsAI: 1, - } - temp.PlatformIDs = append(temp.PlatformIDs, cast.PlatformIDENUM_YOUTUBE) - temp.MediaAccountNames = append(temp.MediaAccountNames, utils.CleanString(row[5])) - temp.MediaAccountUuids = append(temp.MediaAccountUuids, mediaInfoResp.Info.MediaAccountUuid) + temp.Remark = fmt.Sprintf("Youtube不能发图文") + zap.L().Error("CastProvider.MediaInfo", zap.Error(err)) + req.ImageWorks = append(req.ImageWorks, temp) + continue + // mediaInfoResp, err = service.CastProvider.MediaInfo(context.Background(), &cast.MediaInfoReq{ + // ArtistUuid: temp.ArtistUuid, + // PlatformID: cast.PlatformIDENUM_YOUTUBE, + // PlatformUserName: utils.CleanString(row[5]), + // }) + // if err != nil || mediaInfoResp.Info.MediaAccountUuid == "" { + // temp.Remark = fmt.Sprintf("YouTube账号名不存在") + // zap.L().Error("CastProvider.MediaInfo", zap.Error(err)) + // req.ImageWorks = append(req.ImageWorks, temp) + // continue + // } + // temp.PublishConfig1 = &cast.PublishConfig{ + // ForbidComment: 1, + // PublicType: 1, + // CanJoin: 1, + // CanQuote: 1, + // CanComment: 1, + // IsAI: 1, + // } + // temp.PlatformIDs = append(temp.PlatformIDs, cast.PlatformIDENUM_YOUTUBE) + // temp.MediaAccountNames = append(temp.MediaAccountNames, utils.CleanString(row[5])) + // temp.MediaAccountUuids = append(temp.MediaAccountUuids, mediaInfoResp.Info.MediaAccountUuid) } // Bluesky账号(第G列,row[6]) if len(row) > 6 && utils.CleanString(row[6]) != "" { @@ -1425,6 +1429,12 @@ func ImportWorkBatch(ctx *gin.Context) { req.ImageWorks = append(req.ImageWorks, temp) continue } + // 判断图片数量是否超过4 + if len(temp.Images) > 4 { + temp.Remark = "Bluesky 图片数量不能超过4" + req.ImageWorks = append(req.ImageWorks, temp) + continue + } req.ImageWorks = append(req.ImageWorks, temp) } if len(req.ImageWorks) == 0 { From fc169f7a1fe557c6f3e863875c6115c77e0ba273 Mon Sep 17 00:00:00 2001 From: cjy Date: Tue, 6 Jan 2026 10:32:19 +0800 Subject: [PATCH 17/19] =?UTF-8?q?feat=EF=BC=9A=E4=BF=AE=E6=94=B9=E6=89=B9?= =?UTF-8?q?=E9=87=8F=E5=AF=BC=E5=85=A5=E5=9B=BE=E6=96=87=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/图文导入模板.xlsx | Bin 11917 -> 11925 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/data/图文导入模板.xlsx b/data/图文导入模板.xlsx index bc9c96508611f62155ee973ecc1e94dabed9dd30..3ce26da67670209b528c439e0ff520c2c97d25e0 100644 GIT binary patch delta 2364 zcmY*bX*|>m7oNdb##A#IvXy-qGYkroDZ2&}31djOrd5_|5S1~uFn0b4*_k^oOz4DUS;RmI%!d_!GpT@0ZPYgWt+RJ_bLfG%uTH3H|P-ZicmQh5YCJiKYw1R@1d z(%&jTU+2VjeLI+eDsnwNn#J^?_AMGDrlzcJC+rN|s2fsCpfkKB#H0aVTL=9TU!wx} zV0iUrGf(`T0f&!&2)zHpsZm>m ztNx9ZlFawP-^j*KO-#Q%Ym7?*jsTrcdUAK+C zZ0k3nKaV6-+gPGaK1`~GKEoa-Vs*M! zsaj`d?#{OA02R1oP_irNiC6A<*>uF5vW-3zL3C-o?tInr^&|J56MVyT z9qtV6B^h(OP-j|mQna>a`?uJ^X#ZeYW}Ajelz74YV!1YzMp#0?u9S^hIlQ1jn5pFKZb2_p(s~|O zmFyCXC^eibPssWZx1=?9nh@$7_hrm~FsR-3kj`HSdLZJEq2jV)D&iIPBwVSyb`RK| zcjZr=Z~11D*c!GLA(^(#5u!wYCmd*xTX8?oF1$)RupsF!=g`u#%PMP5n+cD~jU7~d z!9TBUv^Ub`@(b!hW$09rdApc}({zyERmRb)#%SSVoRYBl#OrtDJEdZwd`&;QDY+Z9 zrg0KKS)Bc`Mgp?YJ7z{1ZwOboIcBYY?dYDb?bTj^n~fUCjnMkFkOyLoOow*Zybey) z=gi1vb#pR2P!heTj6N4VTe!!&1x?4mU!{phfcT<9;*Zde&bv%JR2Pt<5Xv2Tl3(d( zr}nDi9r|Ey3K?fVcbv`taH*?$)#YU`MXf{EfNZ65#Vy|3HCWs0QWZeSUPLoT8ZZu#B^y+J=Xr>19U-Tb(?(rHmHOSHGQ!EuW=9a_E)EXJWA|kL16VcjV z!ZdFYbV3F)#QZ6s7~XI{`O;KXbVi3=uL;(NpaOe4+!q<)!2+5~G9mm;r`2c#tjrzY zwKWOLNdV9yI&`D%t{QQb@G)kMxLz2+GD%1SS~M1=h_v!4Gp`UbT*6<2F1oe&X2&?^ z6gvc9z5(>jhk#-cR}7Z-&_~Zz?E3eP#7@!LI>u}r<=mo37^&pNLBX=Kxp_Ans1>{) z2WZ?Yl)73k*QZfw9~oIWKj)sDacopEf_9dQ$sIZmqtEctGOxI8RQs_}VH&(OpP&83 zl^r{*X`&WLrlpa+SNpY;lP?R4qREGF|y3Zc`>s_c}4wz}%NxzB(VwOcZsDNjDd-sUYW14#QH#hV_^#`T^AW^p zL6W8Z{>q!FN#?$?m*<6L2;7kTr0vMe6hpt~0VhJQ-L@RT3Py?{04W6|%y!477Qg&; z`Fl2JcX@KH|8^#Kw~3sRV>@}x2eMoeXP>|PWa*pqq8=A8YbWnKn|@9{u{7I>w^`6ShS|he=iOCC%_>2z03s$(Wc-L0D&WN~)H)peyQ^@_(oeMNj|$ delta 2362 zcmV-A3B~r6U5#C^ngIoEiAZNhlb-<}e`~`a6o&5y`wzkUM3a6{BuUu^y;@UmR`P!BT2R6r}i*|Vx zbABE6ypYV+|5ACIJUnhzsLV(@kJBtB*@i6W zY)T3FXy3o;Zw>nkb+-7In9W*ZHrbFFof4WZM#KxC?7XjkMfnX-O9KRx!73WFAp^1j z3c_1l(`N+$074g&feIOaF)ny*Y_(WjbDKC6ecze=4-D@C3&)A$vE6AMr^(W^-6p$v zRzSA30mOnFC;jz%B>_f)66In0U^|ziqoezUdgmWr(!_ZtMM+t@q^Lm%ug}RT*WXeY&h6vLnCs@qJ2s-u1E@!U=I4r9nH&{ z?IpJ2iwk^!v(|cA5--)0h7X-~^rbW^Sjjfri&*L_Y28y^_!rta)2Kt#ezQaScfH$xmCPd$9g_{-Cw#?{2O9I; z!o6^7+YffQCUm>wAY}xJ9LYmBCb3Dx5@3W+C#53aT_?paO1WY~fj1Eu|C)eXf|{e+ zN_wbS3{T}^_&!vNk@aFYy<806_2N_SEU?}Cv|0}Mdij~9Y{1E#p|I9sM%Ih3QcWhcsJrF7UN34(@bwO+g}tMyXQ7iH)Qf}UeV z2)LS1^DqR;YQ4B;_ZM=8aj>WEtLXaVLq$-u{NNtk|scf<%wal;; zQW+($k}{%~9m~372`h`86wBOPA(fnMDW+xJ!Gx8?PKsrkuaHXXwiMH{?qI^oVkc#w zK*lpj%IZ3@LaIXAQcTObg9$5(os@xE)1|0lYfCXLYh+r&%3>!4ZiBxnFkOncHZI&g zwiMH{My4gKELKwB&S)n^0Cg!H%erF;D~p|!fnL`3N*KJOmjwg8OecLuFAD~GnNIqS zUN&^M*GW|`v-6WP2{C`Z$j7!7C4knXwiPvgM@5YXDhi?2iy{|S$HBs6=1F;w$g&DzAxzL?Q?;TAVBge#_Hp5RwCEG%KP8pYWO zCnfjFpa0O8eI~|z8xZJO`!&N>JQFxIT3ke9LAPvI0B<%0)vl{H$iAR zn$-WG0c{xL{g2?lV!u1W_qmf}aQz+q34=W-TUJmQAj`S&!p&L13rxB6klg4>aymGn z+w6hzT_sseG{pz3vYCD_{{ypW3VsR%YGVMolj{^Bf6Ge4Koo}eg6|M!Z8J%1ypcqx zS}66hXu5D2lCh08lbV@ob)}0cE~J7ef+8ZQE488`*5cEcq`rlTF4T0oJm1G0eun=j zlXa)Uts#%tE>?la3xGq|bS)c~R8Z8jsWHG2YGBK#xEQHm0}(K(4Gt)TP%e6li3-Y; zRwp1Ne`Xmu2I1W*!jV~WJ;$KY=#?O;ddRRy86oOapd<(*&@pTbIMc0RssdRCTn*c+ zH8k}Dq*0(L#MTt5b@$pI?Y07`rofo|rD5mTZ@wg*p3CbC`R>zo-4ii8E68cN_g5Ysg4UCN zdlYUzhc{b8$z}e3pVV=)NmOmq!YPUf<;mu^5(2F!lhG#?lbR_i1g9ea0Fz!T7L(p78Uf3b z`6-hHZHY){N0X5%R00A6lOF>Wll&?w2X_Pj0C;RKlin;GlSwNM0rQhsD>eZdlaDJc z1Zradxs$*v76H+d*DFB*%99x^Ist)`R4g_DsFRBs!lk+Vq g0$~c1;RF?vG%ha!aSW5;1QnBdE)@n*DF6Tf00E>{DgXcg From dd0c81f27c8e1a08d2ad5d5622bc3bea102c2f46 Mon Sep 17 00:00:00 2001 From: cjy Date: Wed, 7 Jan 2026 14:24:31 +0800 Subject: [PATCH 18/19] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8Dyoutube=E5=8F=91?= =?UTF-8?q?=E5=B8=83=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/aryshare/ayrshare.pb.go | 4934 ++++++++++++++++++----------------- pkg/service/cast/work.go | 30 +- 2 files changed, 2490 insertions(+), 2474 deletions(-) diff --git a/api/aryshare/ayrshare.pb.go b/api/aryshare/ayrshare.pb.go index ade4d4d..a985148 100644 --- a/api/aryshare/ayrshare.pb.go +++ b/api/aryshare/ayrshare.pb.go @@ -28,9 +28,9 @@ type UserTag struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"` - X float64 `protobuf:"fixed64,2,opt,name=x,proto3" json:"x,omitempty"` // Required for images, cannot be used with Reels - Y float64 `protobuf:"fixed64,3,opt,name=y,proto3" json:"y,omitempty"` // Required for images, cannot be used with Reels + Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username"` + X float64 `protobuf:"fixed64,2,opt,name=x,proto3" json:"x"` // Required for images, cannot be used with Reels + Y float64 `protobuf:"fixed64,3,opt,name=y,proto3" json:"y"` // Required for images, cannot be used with Reels } func (x *UserTag) Reset() { @@ -92,17 +92,17 @@ type InstagramOptions struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ShareReelsFeed bool `protobuf:"varint,1,opt,name=shareReelsFeed,proto3" json:"shareReelsFeed,omitempty"` // Whether Reel can appear in both Feed and Reels tabs - AudioName string `protobuf:"bytes,2,opt,name=audioName,proto3" json:"audioName,omitempty"` // Name of the audio music for Reels - ThumbNail string `protobuf:"bytes,3,opt,name=thumbNail,proto3" json:"thumbNail,omitempty"` // URL of the Reel cover image (thumbnail) - ThumbNailOffset int32 `protobuf:"varint,4,opt,name=thumbNailOffset,proto3" json:"thumbNailOffset,omitempty"` // Offset in milliseconds of the thumbnail frame - Stories bool `protobuf:"varint,5,opt,name=stories,proto3" json:"stories,omitempty"` // Whether to post as Instagram Story - AltText []string `protobuf:"bytes,6,rep,name=altText,proto3" json:"altText,omitempty"` // Array of alternative text for images (up to 1000 chars per image) - LocationId string `protobuf:"bytes,7,opt,name=locationId,proto3" json:"locationId,omitempty"` // Facebook Page ID or Page name - UserTags []*UserTag `protobuf:"bytes,8,rep,name=userTags,proto3" json:"userTags,omitempty"` // Array of user tags with username and coordinates - Collaborators []string `protobuf:"bytes,9,rep,name=collaborators,proto3" json:"collaborators,omitempty"` // Array of Instagram usernames (up to 3) - AutoResize bool `protobuf:"varint,10,opt,name=autoResize,proto3" json:"autoResize,omitempty"` // Auto resize images to 1080x1080px (Max Pack required) - DisableComments bool `protobuf:"varint,11,opt,name=disableComments,proto3" json:"disableComments,omitempty"` // Disable comments on the published post + ShareReelsFeed bool `protobuf:"varint,1,opt,name=shareReelsFeed,proto3" json:"shareReelsFeed"` // Whether Reel can appear in both Feed and Reels tabs + AudioName string `protobuf:"bytes,2,opt,name=audioName,proto3" json:"audioName"` // Name of the audio music for Reels + ThumbNail string `protobuf:"bytes,3,opt,name=thumbNail,proto3" json:"thumbNail"` // URL of the Reel cover image (thumbnail) + ThumbNailOffset int32 `protobuf:"varint,4,opt,name=thumbNailOffset,proto3" json:"thumbNailOffset"` // Offset in milliseconds of the thumbnail frame + Stories bool `protobuf:"varint,5,opt,name=stories,proto3" json:"stories"` // Whether to post as Instagram Story + AltText []string `protobuf:"bytes,6,rep,name=altText,proto3" json:"altText"` // Array of alternative text for images (up to 1000 chars per image) + LocationId string `protobuf:"bytes,7,opt,name=locationId,proto3" json:"locationId"` // Facebook Page ID or Page name + UserTags []*UserTag `protobuf:"bytes,8,rep,name=userTags,proto3" json:"userTags"` // Array of user tags with username and coordinates + Collaborators []string `protobuf:"bytes,9,rep,name=collaborators,proto3" json:"collaborators"` // Array of Instagram usernames (up to 3) + AutoResize bool `protobuf:"varint,10,opt,name=autoResize,proto3" json:"autoResize"` // Auto resize images to 1080x1080px (Max Pack required) + DisableComments bool `protobuf:"varint,11,opt,name=disableComments,proto3" json:"disableComments"` // Disable comments on the published post } func (x *InstagramOptions) Reset() { @@ -220,19 +220,19 @@ type TikTokOptions struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - AutoAddMusic bool `protobuf:"varint,1,opt,name=autoAddMusic,proto3" json:"autoAddMusic,omitempty"` // Whether to automatically add recommended music (image only) - DisableComments bool `protobuf:"varint,2,opt,name=disableComments,proto3" json:"disableComments,omitempty"` // Whether to disable comments on the published post - DisableDuet bool `protobuf:"varint,3,opt,name=disableDuet,proto3" json:"disableDuet,omitempty"` // Disable duets on the published video (video only) - DisableStitch bool `protobuf:"varint,4,opt,name=disableStitch,proto3" json:"disableStitch,omitempty"` // Disable stitch on the published video (video only) - Draft bool `protobuf:"varint,5,opt,name=draft,proto3" json:"draft,omitempty"` // Whether to create a draft post - IsAIGenerated bool `protobuf:"varint,6,opt,name=isAIGenerated,proto3" json:"isAIGenerated,omitempty"` // Whether to enable AI-generated content toggle (video only) - IsBrandedContent bool `protobuf:"varint,7,opt,name=isBrandedContent,proto3" json:"isBrandedContent,omitempty"` // Whether to enable Branded Content toggle - IsBrandOrganic bool `protobuf:"varint,8,opt,name=isBrandOrganic,proto3" json:"isBrandOrganic,omitempty"` // Whether to enable Brand Organic Content toggle - ImageCoverIndex int32 `protobuf:"varint,9,opt,name=imageCoverIndex,proto3" json:"imageCoverIndex,omitempty"` // Index of mediaUrls to be used as cover (image only, default 0) - Title string `protobuf:"bytes,10,opt,name=title,proto3" json:"title,omitempty"` // Title of the post (image only) - ThumbNailOffset int32 `protobuf:"varint,11,opt,name=thumbNailOffset,proto3" json:"thumbNailOffset,omitempty"` // Frame to use for video cover in milliseconds (video only) - ThumbNail string `protobuf:"bytes,12,opt,name=thumbNail,proto3" json:"thumbNail,omitempty"` // URL of thumbnail image for video (video only) - Visibility string `protobuf:"bytes,13,opt,name=visibility,proto3" json:"visibility,omitempty"` // How the post is shared: "public", "private", "followers", "friends" (image only, default "public") + AutoAddMusic bool `protobuf:"varint,1,opt,name=autoAddMusic,proto3" json:"autoAddMusic"` // Whether to automatically add recommended music (image only) + DisableComments bool `protobuf:"varint,2,opt,name=disableComments,proto3" json:"disableComments"` // Whether to disable comments on the published post + DisableDuet bool `protobuf:"varint,3,opt,name=disableDuet,proto3" json:"disableDuet"` // Disable duets on the published video (video only) + DisableStitch bool `protobuf:"varint,4,opt,name=disableStitch,proto3" json:"disableStitch"` // Disable stitch on the published video (video only) + Draft bool `protobuf:"varint,5,opt,name=draft,proto3" json:"draft"` // Whether to create a draft post + IsAIGenerated bool `protobuf:"varint,6,opt,name=isAIGenerated,proto3" json:"isAIGenerated"` // Whether to enable AI-generated content toggle (video only) + IsBrandedContent bool `protobuf:"varint,7,opt,name=isBrandedContent,proto3" json:"isBrandedContent"` // Whether to enable Branded Content toggle + IsBrandOrganic bool `protobuf:"varint,8,opt,name=isBrandOrganic,proto3" json:"isBrandOrganic"` // Whether to enable Brand Organic Content toggle + ImageCoverIndex int32 `protobuf:"varint,9,opt,name=imageCoverIndex,proto3" json:"imageCoverIndex"` // Index of mediaUrls to be used as cover (image only, default 0) + Title string `protobuf:"bytes,10,opt,name=title,proto3" json:"title"` // Title of the post (image only) + ThumbNailOffset int32 `protobuf:"varint,11,opt,name=thumbNailOffset,proto3" json:"thumbNailOffset"` // Frame to use for video cover in milliseconds (video only) + ThumbNail string `protobuf:"bytes,12,opt,name=thumbNail,proto3" json:"thumbNail"` // URL of thumbnail image for video (video only) + Visibility string `protobuf:"bytes,13,opt,name=visibility,proto3" json:"visibility"` // How the post is shared: "public", "private", "followers", "friends" (image only, default "public") } func (x *TikTokOptions) Reset() { @@ -364,15 +364,20 @@ type YouTubeOptions struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` // Video title (required for YouTube) - Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` // Video description - Privacy string `protobuf:"bytes,3,opt,name=privacy,proto3" json:"privacy,omitempty"` // Privacy status: "public", "unlisted", "private" (default "public") - Tags []string `protobuf:"bytes,4,rep,name=tags,proto3" json:"tags,omitempty"` // Video tags - CategoryId string `protobuf:"bytes,5,opt,name=categoryId,proto3" json:"categoryId,omitempty"` // YouTube category ID - MadeForKids bool `protobuf:"varint,6,opt,name=madeForKids,proto3" json:"madeForKids,omitempty"` // Whether the video is made for kids - ThumbNail string `protobuf:"bytes,7,opt,name=thumbNail,proto3" json:"thumbNail,omitempty"` // URL of custom thumbnail image - PlaylistId string `protobuf:"bytes,8,opt,name=playlistId,proto3" json:"playlistId,omitempty"` // Playlist ID to add the video to - NotifySubscribers bool `protobuf:"varint,9,opt,name=notifySubscribers,proto3" json:"notifySubscribers,omitempty"` // Whether to notify subscribers (default true) + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` // Video title (required for YouTube, max 100 characters) + Visibility string `protobuf:"bytes,2,opt,name=visibility,proto3" json:"visibility"` // Visibility: "public", "unlisted", or "private" (default: "private") + Tags []string `protobuf:"bytes,3,rep,name=tags,proto3" json:"tags"` // Video tags (400 chars total, 2+ chars each) + CategoryId int32 `protobuf:"varint,4,opt,name=categoryId,proto3" json:"categoryId"` // YouTube category ID (e.g., 24 = Entertainment) + MadeForKids bool `protobuf:"varint,5,opt,name=madeForKids,proto3" json:"madeForKids"` // Whether the video is made for kids (default: false) + ThumbNail string `protobuf:"bytes,6,opt,name=thumbNail,proto3" json:"thumbNail"` // URL of custom thumbnail image (JPEG/PNG under 2MB, must end in png/jpg/jpeg) + PlaylistId string `protobuf:"bytes,7,opt,name=playlistId,proto3" json:"playlistId"` // Playlist ID to add the video to + NotifySubscribers bool `protobuf:"varint,8,opt,name=notifySubscribers,proto3" json:"notifySubscribers"` // Whether to notify subscribers (default: true) + Shorts bool `protobuf:"varint,9,opt,name=shorts,proto3" json:"shorts"` // Post as YouTube Short (max 3 minutes, adds #shorts) + ContainsSyntheticMedia bool `protobuf:"varint,10,opt,name=containsSyntheticMedia,proto3" json:"containsSyntheticMedia"` // Disclose that a video contains realistic Altered or Synthetic (A/S) content + PublishAt string `protobuf:"bytes,11,opt,name=publishAt,proto3" json:"publishAt"` // UTC publish time (YouTube controlled publishing) + SubTitleUrl string `protobuf:"bytes,12,opt,name=subTitleUrl,proto3" json:"subTitleUrl"` // URL to SRT or SBV subtitle file (must start with https:// and end in .srt or .sbv, under 100 MB) + SubTitleLanguage string `protobuf:"bytes,13,opt,name=subTitleLanguage,proto3" json:"subTitleLanguage"` // Language code of subtitles (default: "en") + SubTitleName string `protobuf:"bytes,14,opt,name=subTitleName,proto3" json:"subTitleName"` // Name of the caption track (max 150 chars, default: "English") } func (x *YouTubeOptions) Reset() { @@ -414,16 +419,9 @@ func (x *YouTubeOptions) GetTitle() string { return "" } -func (x *YouTubeOptions) GetDescription() string { +func (x *YouTubeOptions) GetVisibility() string { if x != nil { - return x.Description - } - return "" -} - -func (x *YouTubeOptions) GetPrivacy() string { - if x != nil { - return x.Privacy + return x.Visibility } return "" } @@ -435,11 +433,11 @@ func (x *YouTubeOptions) GetTags() []string { return nil } -func (x *YouTubeOptions) GetCategoryId() string { +func (x *YouTubeOptions) GetCategoryId() int32 { if x != nil { return x.CategoryId } - return "" + return 0 } func (x *YouTubeOptions) GetMadeForKids() bool { @@ -470,17 +468,55 @@ func (x *YouTubeOptions) GetNotifySubscribers() bool { return false } +func (x *YouTubeOptions) GetShorts() bool { + if x != nil { + return x.Shorts + } + return false +} + +func (x *YouTubeOptions) GetContainsSyntheticMedia() bool { + if x != nil { + return x.ContainsSyntheticMedia + } + return false +} + +func (x *YouTubeOptions) GetPublishAt() string { + if x != nil { + return x.PublishAt + } + return "" +} + +func (x *YouTubeOptions) GetSubTitleUrl() string { + if x != nil { + return x.SubTitleUrl + } + return "" +} + +func (x *YouTubeOptions) GetSubTitleLanguage() string { + if x != nil { + return x.SubTitleLanguage + } + return "" +} + +func (x *YouTubeOptions) GetSubTitleName() string { + if x != nil { + return x.SubTitleName + } + return "" +} + // Bluesky 特定发布选项 type BlueskyOptions struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Labels []string `protobuf:"bytes,1,rep,name=labels,proto3" json:"labels,omitempty"` // Content labels for the post - Langs []string `protobuf:"bytes,2,rep,name=langs,proto3" json:"langs,omitempty"` // Language codes (e.g., ["en", "zh"]) - QuotedPostUri string `protobuf:"bytes,3,opt,name=quotedPostUri,proto3" json:"quotedPostUri,omitempty"` // URI of the post to quote - ReplyToPostUri string `protobuf:"bytes,4,opt,name=replyToPostUri,proto3" json:"replyToPostUri,omitempty"` // URI of the post to reply to - ReplyToPostCid string `protobuf:"bytes,5,opt,name=replyToPostCid,proto3" json:"replyToPostCid,omitempty"` // CID of the post to reply to + AltText []string `protobuf:"bytes,6,rep,name=altText,proto3" json:"altText"` // Array of alternative text for images or videos (accessibility feature for screen readers) } func (x *BlueskyOptions) Reset() { @@ -515,60 +551,32 @@ func (*BlueskyOptions) Descriptor() ([]byte, []int) { return file_pb_ayrshare_proto_rawDescGZIP(), []int{4} } -func (x *BlueskyOptions) GetLabels() []string { +func (x *BlueskyOptions) GetAltText() []string { if x != nil { - return x.Labels + return x.AltText } return nil } -func (x *BlueskyOptions) GetLangs() []string { - if x != nil { - return x.Langs - } - return nil -} - -func (x *BlueskyOptions) GetQuotedPostUri() string { - if x != nil { - return x.QuotedPostUri - } - return "" -} - -func (x *BlueskyOptions) GetReplyToPostUri() string { - if x != nil { - return x.ReplyToPostUri - } - return "" -} - -func (x *BlueskyOptions) GetReplyToPostCid() string { - if x != nil { - return x.ReplyToPostCid - } - return "" -} - // 发布帖子到社交媒体平台 type PostRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Post string `protobuf:"bytes,1,opt,name=post,proto3" json:"post,omitempty"` - Platforms []string `protobuf:"bytes,2,rep,name=platforms,proto3" json:"platforms,omitempty"` - MediaUrls []string `protobuf:"bytes,3,rep,name=mediaUrls,proto3" json:"mediaUrls,omitempty"` - IsVideo bool `protobuf:"varint,4,opt,name=isVideo,proto3" json:"isVideo,omitempty"` - ScheduleDate string `protobuf:"bytes,5,opt,name=scheduleDate,proto3" json:"scheduleDate,omitempty"` - ValidateScheduled bool `protobuf:"varint,6,opt,name=validateScheduled,proto3" json:"validateScheduled,omitempty"` - ShortenLinks bool `protobuf:"varint,7,opt,name=shortenLinks,proto3" json:"shortenLinks,omitempty"` - DisableComments bool `protobuf:"varint,8,opt,name=disableComments,proto3" json:"disableComments,omitempty"` - InstagramOptions *InstagramOptions `protobuf:"bytes,9,opt,name=instagramOptions,proto3" json:"instagramOptions,omitempty"` - TikTokOptions *TikTokOptions `protobuf:"bytes,10,opt,name=tikTokOptions,proto3" json:"tikTokOptions,omitempty"` - ProfileKey string `protobuf:"bytes,11,opt,name=profileKey,proto3" json:"profileKey,omitempty"` - YouTubeOptions *YouTubeOptions `protobuf:"bytes,12,opt,name=youTubeOptions,proto3" json:"youTubeOptions,omitempty"` - BlueskyOptions *BlueskyOptions `protobuf:"bytes,13,opt,name=blueskyOptions,proto3" json:"blueskyOptions,omitempty"` + Post string `protobuf:"bytes,1,opt,name=post,proto3" json:"post"` + Platforms []string `protobuf:"bytes,2,rep,name=platforms,proto3" json:"platforms"` + MediaUrls []string `protobuf:"bytes,3,rep,name=mediaUrls,proto3" json:"mediaUrls"` + IsVideo bool `protobuf:"varint,4,opt,name=isVideo,proto3" json:"isVideo"` + ScheduleDate string `protobuf:"bytes,5,opt,name=scheduleDate,proto3" json:"scheduleDate"` + ValidateScheduled bool `protobuf:"varint,6,opt,name=validateScheduled,proto3" json:"validateScheduled"` + ShortenLinks bool `protobuf:"varint,7,opt,name=shortenLinks,proto3" json:"shortenLinks"` + DisableComments bool `protobuf:"varint,8,opt,name=disableComments,proto3" json:"disableComments"` + InstagramOptions *InstagramOptions `protobuf:"bytes,9,opt,name=instagramOptions,proto3" json:"instagramOptions"` + TikTokOptions *TikTokOptions `protobuf:"bytes,10,opt,name=tikTokOptions,proto3" json:"tikTokOptions"` + ProfileKey string `protobuf:"bytes,11,opt,name=profileKey,proto3" json:"profileKey"` + YouTubeOptions *YouTubeOptions `protobuf:"bytes,12,opt,name=youTubeOptions,proto3" json:"youTubeOptions"` + BlueskyOptions *BlueskyOptions `protobuf:"bytes,13,opt,name=blueskyOptions,proto3" json:"blueskyOptions"` } func (x *PostRequest) Reset() { @@ -700,18 +708,18 @@ type PostId struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` - Cid string `protobuf:"bytes,3,opt,name=cid,proto3" json:"cid,omitempty"` - PostUrl string `protobuf:"bytes,4,opt,name=postUrl,proto3" json:"postUrl,omitempty"` - Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"` - Type string `protobuf:"bytes,6,opt,name=type,proto3" json:"type,omitempty"` - Owner string `protobuf:"bytes,7,opt,name=owner,proto3" json:"owner,omitempty"` - MediaId string `protobuf:"bytes,8,opt,name=mediaId,proto3" json:"mediaId,omitempty"` - Ended string `protobuf:"bytes,9,opt,name=ended,proto3" json:"ended,omitempty"` - IdShare string `protobuf:"bytes,10,opt,name=idShare,proto3" json:"idShare,omitempty"` - IsVideo bool `protobuf:"varint,11,opt,name=isVideo,proto3" json:"isVideo,omitempty"` - UsedQuota int32 `protobuf:"varint,12,opt,name=usedQuota,proto3" json:"usedQuota,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Cid string `protobuf:"bytes,3,opt,name=cid,proto3" json:"cid"` + PostUrl string `protobuf:"bytes,4,opt,name=postUrl,proto3" json:"postUrl"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` + Type string `protobuf:"bytes,6,opt,name=type,proto3" json:"type"` + Owner string `protobuf:"bytes,7,opt,name=owner,proto3" json:"owner"` + MediaId string `protobuf:"bytes,8,opt,name=mediaId,proto3" json:"mediaId"` + Ended string `protobuf:"bytes,9,opt,name=ended,proto3" json:"ended"` + IdShare string `protobuf:"bytes,10,opt,name=idShare,proto3" json:"idShare"` + IsVideo bool `protobuf:"varint,11,opt,name=isVideo,proto3" json:"isVideo"` + UsedQuota int32 `protobuf:"varint,12,opt,name=usedQuota,proto3" json:"usedQuota"` } func (x *PostId) Reset() { @@ -836,14 +844,14 @@ type PostItem struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Errors []string `protobuf:"bytes,2,rep,name=errors,proto3" json:"errors,omitempty"` - PostIds []*PostId `protobuf:"bytes,3,rep,name=postIds,proto3" json:"postIds,omitempty"` - Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"` - RefId string `protobuf:"bytes,5,opt,name=refId,proto3" json:"refId,omitempty"` - ProfileTitle string `protobuf:"bytes,6,opt,name=profileTitle,proto3" json:"profileTitle,omitempty"` - Post string `protobuf:"bytes,7,opt,name=post,proto3" json:"post,omitempty"` - TikTokId string `protobuf:"bytes,8,opt,name=tikTokId,proto3" json:"tikTokId,omitempty"` // TikTok 特定的 ID + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Errors []string `protobuf:"bytes,2,rep,name=errors,proto3" json:"errors"` + PostIds []*PostId `protobuf:"bytes,3,rep,name=postIds,proto3" json:"postIds"` + Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id"` + RefId string `protobuf:"bytes,5,opt,name=refId,proto3" json:"refId"` + ProfileTitle string `protobuf:"bytes,6,opt,name=profileTitle,proto3" json:"profileTitle"` + Post string `protobuf:"bytes,7,opt,name=post,proto3" json:"post"` + TikTokId string `protobuf:"bytes,8,opt,name=tikTokId,proto3" json:"tikTokId"` // TikTok 特定的 ID } func (x *PostItem) Reset() { @@ -940,13 +948,13 @@ type PostResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Posts []*PostItem `protobuf:"bytes,2,rep,name=posts,proto3" json:"posts,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Posts []*PostItem `protobuf:"bytes,2,rep,name=posts,proto3" json:"posts"` // 兼容旧版本响应格式(不使用 profile key 时) - Errors []string `protobuf:"bytes,3,rep,name=errors,proto3" json:"errors,omitempty"` - PostIds []*PostId `protobuf:"bytes,4,rep,name=postIds,proto3" json:"postIds,omitempty"` - Id string `protobuf:"bytes,5,opt,name=id,proto3" json:"id,omitempty"` - IsValidated bool `protobuf:"varint,6,opt,name=isValidated,json=validate,proto3" json:"isValidated,omitempty"` // validateScheduled 请求的验证结果 + Errors []string `protobuf:"bytes,3,rep,name=errors,proto3" json:"errors"` + PostIds []*PostId `protobuf:"bytes,4,rep,name=postIds,proto3" json:"postIds"` + Id string `protobuf:"bytes,5,opt,name=id,proto3" json:"id"` + IsValidated bool `protobuf:"varint,6,opt,name=isValidated,json=validate,proto3" json:"isValidated"` // validateScheduled 请求的验证结果 } func (x *PostResponse) Reset() { @@ -1029,8 +1037,8 @@ type GetPostRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` } func (x *GetPostRequest) Reset() { @@ -1085,19 +1093,19 @@ type GetPostResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Created string `protobuf:"bytes,1,opt,name=created,proto3" json:"created,omitempty"` - Errors []string `protobuf:"bytes,2,rep,name=errors,proto3" json:"errors,omitempty"` - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - MediaUrls []string `protobuf:"bytes,4,rep,name=mediaUrls,proto3" json:"mediaUrls,omitempty"` - Platforms []string `protobuf:"bytes,5,rep,name=platforms,proto3" json:"platforms,omitempty"` - Post string `protobuf:"bytes,6,opt,name=post,proto3" json:"post,omitempty"` - PostIds []*PostId `protobuf:"bytes,7,rep,name=postIds,proto3" json:"postIds,omitempty"` - ProfileTitle string `protobuf:"bytes,8,opt,name=profileTitle,proto3" json:"profileTitle,omitempty"` - RefId string `protobuf:"bytes,9,opt,name=refId,proto3" json:"refId,omitempty"` - ScheduleDate string `protobuf:"bytes,10,opt,name=scheduleDate,proto3" json:"scheduleDate,omitempty"` - ShortenLinks bool `protobuf:"varint,11,opt,name=shortenLinks,proto3" json:"shortenLinks,omitempty"` - Status string `protobuf:"bytes,12,opt,name=status,proto3" json:"status,omitempty"` - Type string `protobuf:"bytes,13,opt,name=type,proto3" json:"type,omitempty"` + Created string `protobuf:"bytes,1,opt,name=created,proto3" json:"created"` + Errors []string `protobuf:"bytes,2,rep,name=errors,proto3" json:"errors"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` + MediaUrls []string `protobuf:"bytes,4,rep,name=mediaUrls,proto3" json:"mediaUrls"` + Platforms []string `protobuf:"bytes,5,rep,name=platforms,proto3" json:"platforms"` + Post string `protobuf:"bytes,6,opt,name=post,proto3" json:"post"` + PostIds []*PostId `protobuf:"bytes,7,rep,name=postIds,proto3" json:"postIds"` + ProfileTitle string `protobuf:"bytes,8,opt,name=profileTitle,proto3" json:"profileTitle"` + RefId string `protobuf:"bytes,9,opt,name=refId,proto3" json:"refId"` + ScheduleDate string `protobuf:"bytes,10,opt,name=scheduleDate,proto3" json:"scheduleDate"` + ShortenLinks bool `protobuf:"varint,11,opt,name=shortenLinks,proto3" json:"shortenLinks"` + Status string `protobuf:"bytes,12,opt,name=status,proto3" json:"status"` + Type string `protobuf:"bytes,13,opt,name=type,proto3" json:"type"` } func (x *GetPostResponse) Reset() { @@ -1229,8 +1237,8 @@ type GetUserRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ProfileKey string `protobuf:"bytes,1,opt,name=profileKey,proto3" json:"profileKey,omitempty"` - InstagramDetails bool `protobuf:"varint,2,opt,name=instagramDetails,proto3" json:"instagramDetails,omitempty"` + ProfileKey string `protobuf:"bytes,1,opt,name=profileKey,proto3" json:"profileKey"` + InstagramDetails bool `protobuf:"varint,2,opt,name=instagramDetails,proto3" json:"instagramDetails"` } func (x *GetUserRequest) Reset() { @@ -1285,9 +1293,9 @@ type Timestamp struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Seconds int64 `protobuf:"varint,1,opt,name=seconds,json=_seconds,proto3" json:"seconds,omitempty"` - Nanoseconds int64 `protobuf:"varint,2,opt,name=nanoseconds,json=_nanoseconds,proto3" json:"nanoseconds,omitempty"` - Utc string `protobuf:"bytes,3,opt,name=utc,proto3" json:"utc,omitempty"` + Seconds int64 `protobuf:"varint,1,opt,name=seconds,json=_seconds,proto3" json:"seconds"` + Nanoseconds int64 `protobuf:"varint,2,opt,name=nanoseconds,json=_nanoseconds,proto3" json:"nanoseconds"` + Utc string `protobuf:"bytes,3,opt,name=utc,proto3" json:"utc"` } func (x *Timestamp) Reset() { @@ -1349,9 +1357,9 @@ type TwitterUsage struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - MonthlyUsage int32 `protobuf:"varint,1,opt,name=monthlyUsage,proto3" json:"monthlyUsage,omitempty"` - MonthlyLimit int32 `protobuf:"varint,2,opt,name=monthlyLimit,proto3" json:"monthlyLimit,omitempty"` - MonthlyReset string `protobuf:"bytes,3,opt,name=monthlyReset,proto3" json:"monthlyReset,omitempty"` + MonthlyUsage int32 `protobuf:"varint,1,opt,name=monthlyUsage,proto3" json:"monthlyUsage"` + MonthlyLimit int32 `protobuf:"varint,2,opt,name=monthlyLimit,proto3" json:"monthlyLimit"` + MonthlyReset string `protobuf:"bytes,3,opt,name=monthlyReset,proto3" json:"monthlyReset"` } func (x *TwitterUsage) Reset() { @@ -1413,30 +1421,30 @@ type DisplayName struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Created string `protobuf:"bytes,1,opt,name=created,proto3" json:"created,omitempty"` - DisplayName string `protobuf:"bytes,2,opt,name=displayName,proto3" json:"displayName,omitempty"` - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"` - ProfileUrl string `protobuf:"bytes,5,opt,name=profileUrl,proto3" json:"profileUrl,omitempty"` - UserImage string `protobuf:"bytes,6,opt,name=userImage,proto3" json:"userImage,omitempty"` - Username string `protobuf:"bytes,7,opt,name=username,proto3" json:"username,omitempty"` - Description string `protobuf:"bytes,8,opt,name=description,proto3" json:"description,omitempty"` - MessagingActive bool `protobuf:"varint,9,opt,name=messagingActive,proto3" json:"messagingActive,omitempty"` - PageName string `protobuf:"bytes,10,opt,name=pageName,proto3" json:"pageName,omitempty"` - UserId string `protobuf:"bytes,11,opt,name=userId,proto3" json:"userId,omitempty"` - MapsUrl string `protobuf:"bytes,12,opt,name=mapsUrl,proto3" json:"mapsUrl,omitempty"` - PlaceId string `protobuf:"bytes,13,opt,name=placeId,proto3" json:"placeId,omitempty"` - ReviewUrl string `protobuf:"bytes,14,opt,name=reviewUrl,proto3" json:"reviewUrl,omitempty"` - IgId string `protobuf:"bytes,15,opt,name=igId,proto3" json:"igId,omitempty"` - Type string `protobuf:"bytes,16,opt,name=type,proto3" json:"type,omitempty"` - UsedQuota int32 `protobuf:"varint,17,opt,name=usedQuota,proto3" json:"usedQuota,omitempty"` - RefreshDaysRemaining int32 `protobuf:"varint,18,opt,name=refreshDaysRemaining,proto3" json:"refreshDaysRemaining,omitempty"` - RefreshRequired string `protobuf:"bytes,19,opt,name=refreshRequired,proto3" json:"refreshRequired,omitempty"` - IsEligibleForGeoRestrictions bool `protobuf:"varint,20,opt,name=isEligibleForGeoRestrictions,proto3" json:"isEligibleForGeoRestrictions,omitempty"` - IsVerified bool `protobuf:"varint,21,opt,name=isVerified,proto3" json:"isVerified,omitempty"` - SubscriptionType string `protobuf:"bytes,22,opt,name=subscriptionType,proto3" json:"subscriptionType,omitempty"` - TwitterUsage *TwitterUsage `protobuf:"bytes,23,opt,name=twitterUsage,proto3" json:"twitterUsage,omitempty"` - VerifiedType string `protobuf:"bytes,24,opt,name=verifiedType,proto3" json:"verifiedType,omitempty"` + Created string `protobuf:"bytes,1,opt,name=created,proto3" json:"created"` + DisplayName string `protobuf:"bytes,2,opt,name=displayName,proto3" json:"displayName"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` + Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform"` + ProfileUrl string `protobuf:"bytes,5,opt,name=profileUrl,proto3" json:"profileUrl"` + UserImage string `protobuf:"bytes,6,opt,name=userImage,proto3" json:"userImage"` + Username string `protobuf:"bytes,7,opt,name=username,proto3" json:"username"` + Description string `protobuf:"bytes,8,opt,name=description,proto3" json:"description"` + MessagingActive bool `protobuf:"varint,9,opt,name=messagingActive,proto3" json:"messagingActive"` + PageName string `protobuf:"bytes,10,opt,name=pageName,proto3" json:"pageName"` + UserId string `protobuf:"bytes,11,opt,name=userId,proto3" json:"userId"` + MapsUrl string `protobuf:"bytes,12,opt,name=mapsUrl,proto3" json:"mapsUrl"` + PlaceId string `protobuf:"bytes,13,opt,name=placeId,proto3" json:"placeId"` + ReviewUrl string `protobuf:"bytes,14,opt,name=reviewUrl,proto3" json:"reviewUrl"` + IgId string `protobuf:"bytes,15,opt,name=igId,proto3" json:"igId"` + Type string `protobuf:"bytes,16,opt,name=type,proto3" json:"type"` + UsedQuota int32 `protobuf:"varint,17,opt,name=usedQuota,proto3" json:"usedQuota"` + RefreshDaysRemaining int32 `protobuf:"varint,18,opt,name=refreshDaysRemaining,proto3" json:"refreshDaysRemaining"` + RefreshRequired string `protobuf:"bytes,19,opt,name=refreshRequired,proto3" json:"refreshRequired"` + IsEligibleForGeoRestrictions bool `protobuf:"varint,20,opt,name=isEligibleForGeoRestrictions,proto3" json:"isEligibleForGeoRestrictions"` + IsVerified bool `protobuf:"varint,21,opt,name=isVerified,proto3" json:"isVerified"` + SubscriptionType string `protobuf:"bytes,22,opt,name=subscriptionType,proto3" json:"subscriptionType"` + TwitterUsage *TwitterUsage `protobuf:"bytes,23,opt,name=twitterUsage,proto3" json:"twitterUsage"` + VerifiedType string `protobuf:"bytes,24,opt,name=verifiedType,proto3" json:"verifiedType"` } func (x *DisplayName) Reset() { @@ -1645,21 +1653,21 @@ type GetUserResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ActiveSocialAccounts []string `protobuf:"bytes,1,rep,name=activeSocialAccounts,proto3" json:"activeSocialAccounts,omitempty"` - Created *Timestamp `protobuf:"bytes,2,opt,name=created,proto3" json:"created,omitempty"` - DisplayNames []*DisplayName `protobuf:"bytes,3,rep,name=displayNames,proto3" json:"displayNames,omitempty"` - Email string `protobuf:"bytes,4,opt,name=email,proto3" json:"email,omitempty"` - LastApiCall string `protobuf:"bytes,5,opt,name=lastApiCall,proto3" json:"lastApiCall,omitempty"` - MessagingConversationMonthlyCount int32 `protobuf:"varint,6,opt,name=messagingConversationMonthlyCount,proto3" json:"messagingConversationMonthlyCount,omitempty"` - MessagingEnabled bool `protobuf:"varint,7,opt,name=messagingEnabled,proto3" json:"messagingEnabled,omitempty"` - MonthlyApiCalls int32 `protobuf:"varint,8,opt,name=monthlyApiCalls,proto3" json:"monthlyApiCalls,omitempty"` - MonthlyPostCount int32 `protobuf:"varint,9,opt,name=monthlyPostCount,proto3" json:"monthlyPostCount,omitempty"` - MonthlyPostQuota int32 `protobuf:"varint,10,opt,name=monthlyPostQuota,proto3" json:"monthlyPostQuota,omitempty"` - MonthlyApiCallsQuota int32 `protobuf:"varint,11,opt,name=monthlyApiCallsQuota,proto3" json:"monthlyApiCallsQuota,omitempty"` - RefId string `protobuf:"bytes,12,opt,name=refId,proto3" json:"refId,omitempty"` - Title string `protobuf:"bytes,13,opt,name=title,proto3" json:"title,omitempty"` - LastUpdated string `protobuf:"bytes,14,opt,name=lastUpdated,proto3" json:"lastUpdated,omitempty"` - NextUpdate string `protobuf:"bytes,15,opt,name=nextUpdate,proto3" json:"nextUpdate,omitempty"` + ActiveSocialAccounts []string `protobuf:"bytes,1,rep,name=activeSocialAccounts,proto3" json:"activeSocialAccounts"` + Created *Timestamp `protobuf:"bytes,2,opt,name=created,proto3" json:"created"` + DisplayNames []*DisplayName `protobuf:"bytes,3,rep,name=displayNames,proto3" json:"displayNames"` + Email string `protobuf:"bytes,4,opt,name=email,proto3" json:"email"` + LastApiCall string `protobuf:"bytes,5,opt,name=lastApiCall,proto3" json:"lastApiCall"` + MessagingConversationMonthlyCount int32 `protobuf:"varint,6,opt,name=messagingConversationMonthlyCount,proto3" json:"messagingConversationMonthlyCount"` + MessagingEnabled bool `protobuf:"varint,7,opt,name=messagingEnabled,proto3" json:"messagingEnabled"` + MonthlyApiCalls int32 `protobuf:"varint,8,opt,name=monthlyApiCalls,proto3" json:"monthlyApiCalls"` + MonthlyPostCount int32 `protobuf:"varint,9,opt,name=monthlyPostCount,proto3" json:"monthlyPostCount"` + MonthlyPostQuota int32 `protobuf:"varint,10,opt,name=monthlyPostQuota,proto3" json:"monthlyPostQuota"` + MonthlyApiCallsQuota int32 `protobuf:"varint,11,opt,name=monthlyApiCallsQuota,proto3" json:"monthlyApiCallsQuota"` + RefId string `protobuf:"bytes,12,opt,name=refId,proto3" json:"refId"` + Title string `protobuf:"bytes,13,opt,name=title,proto3" json:"title"` + LastUpdated string `protobuf:"bytes,14,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,15,opt,name=nextUpdate,proto3" json:"nextUpdate"` } func (x *GetUserResponse) Reset() { @@ -1805,15 +1813,15 @@ type CreateProfileRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` - MessagingActive bool `protobuf:"varint,2,opt,name=messagingActive,proto3" json:"messagingActive,omitempty"` - HideTopHeader bool `protobuf:"varint,3,opt,name=hideTopHeader,proto3" json:"hideTopHeader,omitempty"` - TopHeader string `protobuf:"bytes,4,opt,name=topHeader,proto3" json:"topHeader,omitempty"` - DisableSocial []string `protobuf:"bytes,5,rep,name=disableSocial,proto3" json:"disableSocial,omitempty"` - Team bool `protobuf:"varint,6,opt,name=team,proto3" json:"team,omitempty"` - Email string `protobuf:"bytes,7,opt,name=email,proto3" json:"email,omitempty"` - SubHeader string `protobuf:"bytes,8,opt,name=subHeader,proto3" json:"subHeader,omitempty"` - Tags []string `protobuf:"bytes,9,rep,name=tags,proto3" json:"tags,omitempty"` + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` + MessagingActive bool `protobuf:"varint,2,opt,name=messagingActive,proto3" json:"messagingActive"` + HideTopHeader bool `protobuf:"varint,3,opt,name=hideTopHeader,proto3" json:"hideTopHeader"` + TopHeader string `protobuf:"bytes,4,opt,name=topHeader,proto3" json:"topHeader"` + DisableSocial []string `protobuf:"bytes,5,rep,name=disableSocial,proto3" json:"disableSocial"` + Team bool `protobuf:"varint,6,opt,name=team,proto3" json:"team"` + Email string `protobuf:"bytes,7,opt,name=email,proto3" json:"email"` + SubHeader string `protobuf:"bytes,8,opt,name=subHeader,proto3" json:"subHeader"` + Tags []string `protobuf:"bytes,9,rep,name=tags,proto3" json:"tags"` } func (x *CreateProfileRequest) Reset() { @@ -1917,11 +1925,11 @@ type CreateProfileResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"` - RefId string `protobuf:"bytes,3,opt,name=refId,proto3" json:"refId,omitempty"` - ProfileKey string `protobuf:"bytes,4,opt,name=profileKey,proto3" json:"profileKey,omitempty"` - MessagingActive bool `protobuf:"varint,5,opt,name=messagingActive,proto3" json:"messagingActive,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` + RefId string `protobuf:"bytes,3,opt,name=refId,proto3" json:"refId"` + ProfileKey string `protobuf:"bytes,4,opt,name=profileKey,proto3" json:"profileKey"` + MessagingActive bool `protobuf:"varint,5,opt,name=messagingActive,proto3" json:"messagingActive"` } func (x *CreateProfileResponse) Reset() { @@ -1997,17 +2005,17 @@ type GetProfilesRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"` - RefId string `protobuf:"bytes,2,opt,name=refId,proto3" json:"refId,omitempty"` - HasActiveSocialAccounts bool `protobuf:"varint,3,opt,name=hasActiveSocialAccounts,proto3" json:"hasActiveSocialAccounts,omitempty"` - IncludesActiveSocialAccounts []string `protobuf:"bytes,4,rep,name=includesActiveSocialAccounts,proto3" json:"includesActiveSocialAccounts,omitempty"` + Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title"` + RefId string `protobuf:"bytes,2,opt,name=refId,proto3" json:"refId"` + HasActiveSocialAccounts bool `protobuf:"varint,3,opt,name=hasActiveSocialAccounts,proto3" json:"hasActiveSocialAccounts"` + IncludesActiveSocialAccounts []string `protobuf:"bytes,4,rep,name=includesActiveSocialAccounts,proto3" json:"includesActiveSocialAccounts"` // Types that are assignable to ActionLog: // // *GetProfilesRequest_ActionLogBool // *GetProfilesRequest_ActionLogInt ActionLog isGetProfilesRequest_ActionLog `protobuf_oneof:"actionLog"` - Limit int32 `protobuf:"varint,7,opt,name=limit,proto3" json:"limit,omitempty"` - Cursor string `protobuf:"bytes,8,opt,name=cursor,proto3" json:"cursor,omitempty"` + Limit int32 `protobuf:"varint,7,opt,name=limit,proto3" json:"limit"` + Cursor string `protobuf:"bytes,8,opt,name=cursor,proto3" json:"cursor"` } func (x *GetProfilesRequest) Reset() { @@ -2127,14 +2135,14 @@ type ProfileItem struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"` - DisplayTitle string `protobuf:"bytes,3,opt,name=displayTitle,proto3" json:"displayTitle,omitempty"` - Created *Timestamp `protobuf:"bytes,4,opt,name=created,proto3" json:"created,omitempty"` - CreatedUTC string `protobuf:"bytes,5,opt,name=createdUTC,proto3" json:"createdUTC,omitempty"` - RefId string `protobuf:"bytes,6,opt,name=refId,proto3" json:"refId,omitempty"` - ActiveSocialAccounts []string `protobuf:"bytes,7,rep,name=activeSocialAccounts,proto3" json:"activeSocialAccounts,omitempty"` - Suspended bool `protobuf:"varint,8,opt,name=suspended,proto3" json:"suspended,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` + DisplayTitle string `protobuf:"bytes,3,opt,name=displayTitle,proto3" json:"displayTitle"` + Created *Timestamp `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + CreatedUTC string `protobuf:"bytes,5,opt,name=createdUTC,proto3" json:"createdUTC"` + RefId string `protobuf:"bytes,6,opt,name=refId,proto3" json:"refId"` + ActiveSocialAccounts []string `protobuf:"bytes,7,rep,name=activeSocialAccounts,proto3" json:"activeSocialAccounts"` + Suspended bool `protobuf:"varint,8,opt,name=suspended,proto3" json:"suspended"` } func (x *ProfileItem) Reset() { @@ -2231,9 +2239,9 @@ type Pagination struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - HasMore bool `protobuf:"varint,1,opt,name=hasMore,proto3" json:"hasMore,omitempty"` - NextCursor string `protobuf:"bytes,2,opt,name=nextCursor,proto3" json:"nextCursor,omitempty"` - Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"` + HasMore bool `protobuf:"varint,1,opt,name=hasMore,proto3" json:"hasMore"` + NextCursor string `protobuf:"bytes,2,opt,name=nextCursor,proto3" json:"nextCursor"` + Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit"` } func (x *Pagination) Reset() { @@ -2295,11 +2303,11 @@ type GetProfilesResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Profiles []*ProfileItem `protobuf:"bytes,1,rep,name=profiles,proto3" json:"profiles,omitempty"` - Count int32 `protobuf:"varint,2,opt,name=count,proto3" json:"count,omitempty"` - LastUpdated string `protobuf:"bytes,3,opt,name=lastUpdated,proto3" json:"lastUpdated,omitempty"` - NextUpdate string `protobuf:"bytes,4,opt,name=nextUpdate,proto3" json:"nextUpdate,omitempty"` - Pagination *Pagination `protobuf:"bytes,5,opt,name=pagination,proto3" json:"pagination,omitempty"` + Profiles []*ProfileItem `protobuf:"bytes,1,rep,name=profiles,proto3" json:"profiles"` + Count int32 `protobuf:"varint,2,opt,name=count,proto3" json:"count"` + LastUpdated string `protobuf:"bytes,3,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,4,opt,name=nextUpdate,proto3" json:"nextUpdate"` + Pagination *Pagination `protobuf:"bytes,5,opt,name=pagination,proto3" json:"pagination"` } func (x *GetProfilesResponse) Reset() { @@ -2375,9 +2383,9 @@ type Email struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - To string `protobuf:"bytes,1,opt,name=to,proto3" json:"to,omitempty"` - Subject string `protobuf:"bytes,2,opt,name=subject,proto3" json:"subject,omitempty"` - Body string `protobuf:"bytes,3,opt,name=body,proto3" json:"body,omitempty"` + To string `protobuf:"bytes,1,opt,name=to,proto3" json:"to"` + Subject string `protobuf:"bytes,2,opt,name=subject,proto3" json:"subject"` + Body string `protobuf:"bytes,3,opt,name=body,proto3" json:"body"` } func (x *Email) Reset() { @@ -2439,16 +2447,16 @@ type GenerateJWTRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Domain string `protobuf:"bytes,1,opt,name=domain,proto3" json:"domain,omitempty"` - PrivateKey string `protobuf:"bytes,2,opt,name=privateKey,proto3" json:"privateKey,omitempty"` - ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey,omitempty"` - Logout bool `protobuf:"varint,4,opt,name=logout,proto3" json:"logout,omitempty"` - Redirect string `protobuf:"bytes,5,opt,name=redirect,proto3" json:"redirect,omitempty"` - AllowedSocial []string `protobuf:"bytes,6,rep,name=allowedSocial,proto3" json:"allowedSocial,omitempty"` - Verify bool `protobuf:"varint,7,opt,name=verify,proto3" json:"verify,omitempty"` - Base64 bool `protobuf:"varint,8,opt,name=base64,proto3" json:"base64,omitempty"` - ExpiresIn int32 `protobuf:"varint,9,opt,name=expiresIn,proto3" json:"expiresIn,omitempty"` - Email *Email `protobuf:"bytes,10,opt,name=email,proto3" json:"email,omitempty"` + Domain string `protobuf:"bytes,1,opt,name=domain,proto3" json:"domain"` + PrivateKey string `protobuf:"bytes,2,opt,name=privateKey,proto3" json:"privateKey"` + ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` + Logout bool `protobuf:"varint,4,opt,name=logout,proto3" json:"logout"` + Redirect string `protobuf:"bytes,5,opt,name=redirect,proto3" json:"redirect"` + AllowedSocial []string `protobuf:"bytes,6,rep,name=allowedSocial,proto3" json:"allowedSocial"` + Verify bool `protobuf:"varint,7,opt,name=verify,proto3" json:"verify"` + Base64 bool `protobuf:"varint,8,opt,name=base64,proto3" json:"base64"` + ExpiresIn int32 `protobuf:"varint,9,opt,name=expiresIn,proto3" json:"expiresIn"` + Email *Email `protobuf:"bytes,10,opt,name=email,proto3" json:"email"` } func (x *GenerateJWTRequest) Reset() { @@ -2559,12 +2567,12 @@ type GenerateJWTResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"` - Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token,omitempty"` - Url string `protobuf:"bytes,4,opt,name=url,proto3" json:"url,omitempty"` - EmailSent bool `protobuf:"varint,5,opt,name=emailSent,proto3" json:"emailSent,omitempty"` - ExpiresIn string `protobuf:"bytes,6,opt,name=expiresIn,proto3" json:"expiresIn,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title"` + Token string `protobuf:"bytes,3,opt,name=token,proto3" json:"token"` + Url string `protobuf:"bytes,4,opt,name=url,proto3" json:"url"` + EmailSent bool `protobuf:"varint,5,opt,name=emailSent,proto3" json:"emailSent"` + ExpiresIn string `protobuf:"bytes,6,opt,name=expiresIn,proto3" json:"expiresIn"` } func (x *GenerateJWTResponse) Reset() { @@ -2647,11 +2655,11 @@ type HistoryPostId struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` - Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"` - PostUrl string `protobuf:"bytes,4,opt,name=postUrl,proto3" json:"postUrl,omitempty"` - IsVideo bool `protobuf:"varint,5,opt,name=isVideo,proto3" json:"isVideo,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform"` + PostUrl string `protobuf:"bytes,4,opt,name=postUrl,proto3" json:"postUrl"` + IsVideo bool `protobuf:"varint,5,opt,name=isVideo,proto3" json:"isVideo"` } func (x *HistoryPostId) Reset() { @@ -2727,26 +2735,26 @@ type HistoryItem struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Post string `protobuf:"bytes,2,opt,name=post,proto3" json:"post,omitempty"` - Platforms []string `protobuf:"bytes,3,rep,name=platforms,proto3" json:"platforms,omitempty"` - PostIds []*HistoryPostId `protobuf:"bytes,4,rep,name=postIds,proto3" json:"postIds,omitempty"` - Errors []string `protobuf:"bytes,5,rep,name=errors,proto3" json:"errors,omitempty"` - Type string `protobuf:"bytes,6,opt,name=type,proto3" json:"type,omitempty"` - Notes string `protobuf:"bytes,7,opt,name=notes,proto3" json:"notes,omitempty"` - Created string `protobuf:"bytes,8,opt,name=created,proto3" json:"created,omitempty"` - Status string `protobuf:"bytes,9,opt,name=status,proto3" json:"status,omitempty"` - ScheduleDate *Timestamp `protobuf:"bytes,10,opt,name=scheduleDate,proto3" json:"scheduleDate,omitempty"` - Approved bool `protobuf:"varint,11,opt,name=approved,proto3" json:"approved,omitempty"` - ApprovedBy string `protobuf:"bytes,12,opt,name=approvedBy,proto3" json:"approvedBy,omitempty"` - ApprovedDate string `protobuf:"bytes,13,opt,name=approvedDate,proto3" json:"approvedDate,omitempty"` - RejectedBy string `protobuf:"bytes,14,opt,name=rejectedBy,proto3" json:"rejectedBy,omitempty"` - RejectedDate string `protobuf:"bytes,15,opt,name=rejectedDate,proto3" json:"rejectedDate,omitempty"` - RequiresApproval bool `protobuf:"varint,16,opt,name=requiresApproval,proto3" json:"requiresApproval,omitempty"` - ProfileTitle string `protobuf:"bytes,17,opt,name=profileTitle,proto3" json:"profileTitle,omitempty"` - RefId string `protobuf:"bytes,18,opt,name=refId,proto3" json:"refId,omitempty"` - MediaUrls []string `protobuf:"bytes,19,rep,name=mediaUrls,proto3" json:"mediaUrls,omitempty"` - ShortenLinks bool `protobuf:"varint,20,opt,name=shortenLinks,proto3" json:"shortenLinks,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Post string `protobuf:"bytes,2,opt,name=post,proto3" json:"post"` + Platforms []string `protobuf:"bytes,3,rep,name=platforms,proto3" json:"platforms"` + PostIds []*HistoryPostId `protobuf:"bytes,4,rep,name=postIds,proto3" json:"postIds"` + Errors []string `protobuf:"bytes,5,rep,name=errors,proto3" json:"errors"` + Type string `protobuf:"bytes,6,opt,name=type,proto3" json:"type"` + Notes string `protobuf:"bytes,7,opt,name=notes,proto3" json:"notes"` + Created string `protobuf:"bytes,8,opt,name=created,proto3" json:"created"` + Status string `protobuf:"bytes,9,opt,name=status,proto3" json:"status"` + ScheduleDate *Timestamp `protobuf:"bytes,10,opt,name=scheduleDate,proto3" json:"scheduleDate"` + Approved bool `protobuf:"varint,11,opt,name=approved,proto3" json:"approved"` + ApprovedBy string `protobuf:"bytes,12,opt,name=approvedBy,proto3" json:"approvedBy"` + ApprovedDate string `protobuf:"bytes,13,opt,name=approvedDate,proto3" json:"approvedDate"` + RejectedBy string `protobuf:"bytes,14,opt,name=rejectedBy,proto3" json:"rejectedBy"` + RejectedDate string `protobuf:"bytes,15,opt,name=rejectedDate,proto3" json:"rejectedDate"` + RequiresApproval bool `protobuf:"varint,16,opt,name=requiresApproval,proto3" json:"requiresApproval"` + ProfileTitle string `protobuf:"bytes,17,opt,name=profileTitle,proto3" json:"profileTitle"` + RefId string `protobuf:"bytes,18,opt,name=refId,proto3" json:"refId"` + MediaUrls []string `protobuf:"bytes,19,rep,name=mediaUrls,proto3" json:"mediaUrls"` + ShortenLinks bool `protobuf:"varint,20,opt,name=shortenLinks,proto3" json:"shortenLinks"` } func (x *HistoryItem) Reset() { @@ -2927,15 +2935,15 @@ type GetHistoryRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - StartDate string `protobuf:"bytes,1,opt,name=startDate,proto3" json:"startDate,omitempty"` - EndDate string `protobuf:"bytes,2,opt,name=endDate,proto3" json:"endDate,omitempty"` - Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit,omitempty"` - Platforms []string `protobuf:"bytes,4,rep,name=platforms,proto3" json:"platforms,omitempty"` - LastDays int32 `protobuf:"varint,5,opt,name=lastDays,proto3" json:"lastDays,omitempty"` - Status string `protobuf:"bytes,6,opt,name=status,proto3" json:"status,omitempty"` - Type string `protobuf:"bytes,7,opt,name=type,proto3" json:"type,omitempty"` - AutoRepostId string `protobuf:"bytes,8,opt,name=autoRepostId,proto3" json:"autoRepostId,omitempty"` - ProfileKey string `protobuf:"bytes,9,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + StartDate string `protobuf:"bytes,1,opt,name=startDate,proto3" json:"startDate"` + EndDate string `protobuf:"bytes,2,opt,name=endDate,proto3" json:"endDate"` + Limit int32 `protobuf:"varint,3,opt,name=limit,proto3" json:"limit"` + Platforms []string `protobuf:"bytes,4,rep,name=platforms,proto3" json:"platforms"` + LastDays int32 `protobuf:"varint,5,opt,name=lastDays,proto3" json:"lastDays"` + Status string `protobuf:"bytes,6,opt,name=status,proto3" json:"status"` + Type string `protobuf:"bytes,7,opt,name=type,proto3" json:"type"` + AutoRepostId string `protobuf:"bytes,8,opt,name=autoRepostId,proto3" json:"autoRepostId"` + ProfileKey string `protobuf:"bytes,9,opt,name=profileKey,proto3" json:"profileKey"` } func (x *GetHistoryRequest) Reset() { @@ -3039,11 +3047,11 @@ type GetHistoryResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - History []*HistoryItem `protobuf:"bytes,1,rep,name=history,proto3" json:"history,omitempty"` - RefId string `protobuf:"bytes,2,opt,name=refId,proto3" json:"refId,omitempty"` - Count int32 `protobuf:"varint,3,opt,name=count,proto3" json:"count,omitempty"` - LastUpdated string `protobuf:"bytes,4,opt,name=lastUpdated,proto3" json:"lastUpdated,omitempty"` - NextUpdate string `protobuf:"bytes,5,opt,name=nextUpdate,proto3" json:"nextUpdate,omitempty"` + History []*HistoryItem `protobuf:"bytes,1,rep,name=history,proto3" json:"history"` + RefId string `protobuf:"bytes,2,opt,name=refId,proto3" json:"refId"` + Count int32 `protobuf:"varint,3,opt,name=count,proto3" json:"count"` + LastUpdated string `protobuf:"bytes,4,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,5,opt,name=nextUpdate,proto3" json:"nextUpdate"` } func (x *GetHistoryResponse) Reset() { @@ -3119,9 +3127,9 @@ type GetHistoryByIdRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - SearchAllPosts bool `protobuf:"varint,2,opt,name=searchAllPosts,proto3" json:"searchAllPosts,omitempty"` - ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + SearchAllPosts bool `protobuf:"varint,2,opt,name=searchAllPosts,proto3" json:"searchAllPosts"` + ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` } func (x *GetHistoryByIdRequest) Reset() { @@ -3183,19 +3191,19 @@ type GetHistoryByIdResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Tier string `protobuf:"bytes,1,opt,name=tier,proto3" json:"tier,omitempty"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` - MediaUrls []string `protobuf:"bytes,3,rep,name=mediaUrls,proto3" json:"mediaUrls,omitempty"` - PostIds []*HistoryPostId `protobuf:"bytes,4,rep,name=postIds,proto3" json:"postIds,omitempty"` - Id string `protobuf:"bytes,5,opt,name=id,proto3" json:"id,omitempty"` - Errors []string `protobuf:"bytes,6,rep,name=errors,proto3" json:"errors,omitempty"` - Platforms []string `protobuf:"bytes,7,rep,name=platforms,proto3" json:"platforms,omitempty"` - ScheduleDate *Timestamp `protobuf:"bytes,8,opt,name=scheduleDate,proto3" json:"scheduleDate,omitempty"` - Created string `protobuf:"bytes,9,opt,name=created,proto3" json:"created,omitempty"` - ShortenLinks bool `protobuf:"varint,10,opt,name=shortenLinks,proto3" json:"shortenLinks,omitempty"` - Post string `protobuf:"bytes,11,opt,name=post,proto3" json:"post,omitempty"` - Notes string `protobuf:"bytes,12,opt,name=notes,proto3" json:"notes,omitempty"` - Type string `protobuf:"bytes,13,opt,name=type,proto3" json:"type,omitempty"` + Tier string `protobuf:"bytes,1,opt,name=tier,proto3" json:"tier"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + MediaUrls []string `protobuf:"bytes,3,rep,name=mediaUrls,proto3" json:"mediaUrls"` + PostIds []*HistoryPostId `protobuf:"bytes,4,rep,name=postIds,proto3" json:"postIds"` + Id string `protobuf:"bytes,5,opt,name=id,proto3" json:"id"` + Errors []string `protobuf:"bytes,6,rep,name=errors,proto3" json:"errors"` + Platforms []string `protobuf:"bytes,7,rep,name=platforms,proto3" json:"platforms"` + ScheduleDate *Timestamp `protobuf:"bytes,8,opt,name=scheduleDate,proto3" json:"scheduleDate"` + Created string `protobuf:"bytes,9,opt,name=created,proto3" json:"created"` + ShortenLinks bool `protobuf:"varint,10,opt,name=shortenLinks,proto3" json:"shortenLinks"` + Post string `protobuf:"bytes,11,opt,name=post,proto3" json:"post"` + Notes string `protobuf:"bytes,12,opt,name=notes,proto3" json:"notes"` + Type string `protobuf:"bytes,13,opt,name=type,proto3" json:"type"` } func (x *GetHistoryByIdResponse) Reset() { @@ -3327,11 +3335,11 @@ type PlatformPost struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Post string `protobuf:"bytes,2,opt,name=post,proto3" json:"post,omitempty"` - PostUrl string `protobuf:"bytes,3,opt,name=postUrl,proto3" json:"postUrl,omitempty"` - Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created,omitempty"` - CreatedAt string `protobuf:"bytes,5,opt,name=createdAt,proto3" json:"createdAt,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Post string `protobuf:"bytes,2,opt,name=post,proto3" json:"post"` + PostUrl string `protobuf:"bytes,3,opt,name=postUrl,proto3" json:"postUrl"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + CreatedAt string `protobuf:"bytes,5,opt,name=createdAt,proto3" json:"createdAt"` } func (x *PlatformPost) Reset() { @@ -3407,8 +3415,8 @@ type GetHistoryByPlatformRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform,omitempty"` - ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` } func (x *GetHistoryByPlatformRequest) Reset() { @@ -3463,10 +3471,10 @@ type GetHistoryByPlatformResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Posts []*PlatformPost `protobuf:"bytes,2,rep,name=posts,proto3" json:"posts,omitempty"` - LastUpdated string `protobuf:"bytes,3,opt,name=lastUpdated,proto3" json:"lastUpdated,omitempty"` - NextUpdate string `protobuf:"bytes,4,opt,name=nextUpdate,proto3" json:"nextUpdate,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Posts []*PlatformPost `protobuf:"bytes,2,rep,name=posts,proto3" json:"posts"` + LastUpdated string `protobuf:"bytes,3,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,4,opt,name=nextUpdate,proto3" json:"nextUpdate"` } func (x *GetHistoryByPlatformResponse) Reset() { @@ -3535,11 +3543,11 @@ type SendMessageRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform,omitempty"` - RecipientId string `protobuf:"bytes,2,opt,name=recipientId,proto3" json:"recipientId,omitempty"` - Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"` - MediaUrls []string `protobuf:"bytes,4,rep,name=mediaUrls,proto3" json:"mediaUrls,omitempty"` - ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` + RecipientId string `protobuf:"bytes,2,opt,name=recipientId,proto3" json:"recipientId"` + Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message"` + MediaUrls []string `protobuf:"bytes,4,rep,name=mediaUrls,proto3" json:"mediaUrls"` + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` } func (x *SendMessageRequest) Reset() { @@ -3615,14 +3623,14 @@ type MessageItem struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - RecipientId string `protobuf:"bytes,2,opt,name=recipientId,proto3" json:"recipientId,omitempty"` - MessageId string `protobuf:"bytes,3,opt,name=messageId,proto3" json:"messageId,omitempty"` - Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"` - Type string `protobuf:"bytes,5,opt,name=type,proto3" json:"type,omitempty"` - MediaUrl string `protobuf:"bytes,6,opt,name=mediaUrl,proto3" json:"mediaUrl,omitempty"` - Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action,omitempty"` - Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + RecipientId string `protobuf:"bytes,2,opt,name=recipientId,proto3" json:"recipientId"` + MessageId string `protobuf:"bytes,3,opt,name=messageId,proto3" json:"messageId"` + Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message"` + Type string `protobuf:"bytes,5,opt,name=type,proto3" json:"type"` + MediaUrl string `protobuf:"bytes,6,opt,name=mediaUrl,proto3" json:"mediaUrl"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` } func (x *MessageItem) Reset() { @@ -3719,15 +3727,15 @@ type SendMessageResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - RecipientId string `protobuf:"bytes,2,opt,name=recipientId,proto3" json:"recipientId,omitempty"` - MessageId string `protobuf:"bytes,3,opt,name=messageId,proto3" json:"messageId,omitempty"` - Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"` // 成功消息的内容或错误消息的内容(根据 status 判断) - Type string `protobuf:"bytes,5,opt,name=type,proto3" json:"type,omitempty"` - MediaUrl string `protobuf:"bytes,6,opt,name=mediaUrl,proto3" json:"mediaUrl,omitempty"` - Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action,omitempty"` - Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code,omitempty"` - Messages []*MessageItem `protobuf:"bytes,9,rep,name=messages,proto3" json:"messages,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + RecipientId string `protobuf:"bytes,2,opt,name=recipientId,proto3" json:"recipientId"` + MessageId string `protobuf:"bytes,3,opt,name=messageId,proto3" json:"messageId"` + Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message"` // 成功消息的内容或错误消息的内容(根据 status 判断) + Type string `protobuf:"bytes,5,opt,name=type,proto3" json:"type"` + MediaUrl string `protobuf:"bytes,6,opt,name=mediaUrl,proto3" json:"mediaUrl"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` + Messages []*MessageItem `protobuf:"bytes,9,rep,name=messages,proto3" json:"messages"` } func (x *SendMessageResponse) Reset() { @@ -3831,11 +3839,11 @@ type GetMessagesRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform,omitempty"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` - ConversationId string `protobuf:"bytes,3,opt,name=conversationId,proto3" json:"conversationId,omitempty"` - ConversationsOnly bool `protobuf:"varint,4,opt,name=conversationsOnly,proto3" json:"conversationsOnly,omitempty"` - ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Platform string `protobuf:"bytes,1,opt,name=platform,proto3" json:"platform"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + ConversationId string `protobuf:"bytes,3,opt,name=conversationId,proto3" json:"conversationId"` + ConversationsOnly bool `protobuf:"varint,4,opt,name=conversationsOnly,proto3" json:"conversationsOnly"` + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` } func (x *GetMessagesRequest) Reset() { @@ -3911,8 +3919,8 @@ type MessageAttachment struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` - Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"` + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type"` + Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url"` } func (x *MessageAttachment) Reset() { @@ -3967,10 +3975,10 @@ type MessageSenderDetails struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` - Picture string `protobuf:"bytes,3,opt,name=picture,proto3" json:"picture,omitempty"` - ProfileImage string `protobuf:"bytes,4,opt,name=profileImage,proto3" json:"profileImage,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Picture string `protobuf:"bytes,3,opt,name=picture,proto3" json:"picture"` + ProfileImage string `protobuf:"bytes,4,opt,name=profileImage,proto3" json:"profileImage"` } func (x *MessageSenderDetails) Reset() { @@ -4039,9 +4047,9 @@ type MessageRecipientDetails struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` - Picture string `protobuf:"bytes,3,opt,name=picture,proto3" json:"picture,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Picture string `protobuf:"bytes,3,opt,name=picture,proto3" json:"picture"` } func (x *MessageRecipientDetails) Reset() { @@ -4103,8 +4111,8 @@ type MessageReaction struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - UserId string `protobuf:"bytes,1,opt,name=userId,proto3" json:"userId,omitempty"` - Emoji string `protobuf:"bytes,2,opt,name=emoji,proto3" json:"emoji,omitempty"` + UserId string `protobuf:"bytes,1,opt,name=userId,proto3" json:"userId"` + Emoji string `protobuf:"bytes,2,opt,name=emoji,proto3" json:"emoji"` } func (x *MessageReaction) Reset() { @@ -4159,19 +4167,19 @@ type GetMessagesItem struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - SenderId string `protobuf:"bytes,2,opt,name=senderId,proto3" json:"senderId,omitempty"` - SenderDetails *MessageSenderDetails `protobuf:"bytes,3,opt,name=senderDetails,proto3" json:"senderDetails,omitempty"` - RecipientId string `protobuf:"bytes,4,opt,name=recipientId,proto3" json:"recipientId,omitempty"` - RecipientDetails *MessageRecipientDetails `protobuf:"bytes,5,opt,name=recipientDetails,proto3" json:"recipientDetails,omitempty"` - ConversationId string `protobuf:"bytes,6,opt,name=conversationId,proto3" json:"conversationId,omitempty"` - Message string `protobuf:"bytes,7,opt,name=message,proto3" json:"message,omitempty"` - Platform string `protobuf:"bytes,8,opt,name=platform,proto3" json:"platform,omitempty"` - Action string `protobuf:"bytes,9,opt,name=action,proto3" json:"action,omitempty"` - Created string `protobuf:"bytes,10,opt,name=created,proto3" json:"created,omitempty"` - Updated string `protobuf:"bytes,11,opt,name=updated,proto3" json:"updated,omitempty"` - Attachments []*MessageAttachment `protobuf:"bytes,12,rep,name=attachments,proto3" json:"attachments,omitempty"` - Reactions []*MessageReaction `protobuf:"bytes,13,rep,name=reactions,proto3" json:"reactions,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + SenderId string `protobuf:"bytes,2,opt,name=senderId,proto3" json:"senderId"` + SenderDetails *MessageSenderDetails `protobuf:"bytes,3,opt,name=senderDetails,proto3" json:"senderDetails"` + RecipientId string `protobuf:"bytes,4,opt,name=recipientId,proto3" json:"recipientId"` + RecipientDetails *MessageRecipientDetails `protobuf:"bytes,5,opt,name=recipientDetails,proto3" json:"recipientDetails"` + ConversationId string `protobuf:"bytes,6,opt,name=conversationId,proto3" json:"conversationId"` + Message string `protobuf:"bytes,7,opt,name=message,proto3" json:"message"` + Platform string `protobuf:"bytes,8,opt,name=platform,proto3" json:"platform"` + Action string `protobuf:"bytes,9,opt,name=action,proto3" json:"action"` + Created string `protobuf:"bytes,10,opt,name=created,proto3" json:"created"` + Updated string `protobuf:"bytes,11,opt,name=updated,proto3" json:"updated"` + Attachments []*MessageAttachment `protobuf:"bytes,12,rep,name=attachments,proto3" json:"attachments"` + Reactions []*MessageReaction `protobuf:"bytes,13,rep,name=reactions,proto3" json:"reactions"` } func (x *GetMessagesItem) Reset() { @@ -4303,9 +4311,9 @@ type ConversationParticipant struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` - Picture string `protobuf:"bytes,3,opt,name=picture,proto3" json:"picture,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Picture string `protobuf:"bytes,3,opt,name=picture,proto3" json:"picture"` } func (x *ConversationParticipant) Reset() { @@ -4367,10 +4375,10 @@ type ConversationDetail struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Participant *ConversationParticipant `protobuf:"bytes,2,opt,name=participant,proto3" json:"participant,omitempty"` - Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"` - Watermark int64 `protobuf:"varint,4,opt,name=watermark,proto3" json:"watermark,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Participant *ConversationParticipant `protobuf:"bytes,2,opt,name=participant,proto3" json:"participant"` + Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status"` + Watermark int64 `protobuf:"varint,4,opt,name=watermark,proto3" json:"watermark"` } func (x *ConversationDetail) Reset() { @@ -4439,15 +4447,15 @@ type GetMessagesResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Messages []*GetMessagesItem `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages,omitempty"` - LastUpdated string `protobuf:"bytes,3,opt,name=lastUpdated,proto3" json:"lastUpdated,omitempty"` - NextUpdate string `protobuf:"bytes,4,opt,name=nextUpdate,proto3" json:"nextUpdate,omitempty"` - ConversationIds []string `protobuf:"bytes,5,rep,name=conversationIds,proto3" json:"conversationIds,omitempty"` - ConversationsDetails []*ConversationDetail `protobuf:"bytes,6,rep,name=conversationsDetails,proto3" json:"conversationsDetails,omitempty"` - Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action,omitempty"` - Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code,omitempty"` - ErrMsg string `protobuf:"bytes,9,opt,name=errMsg,json=message,proto3" json:"errMsg,omitempty"` // 错误消息(JSON 字段名为 "message",但 proto 字段名为 errMsg 以区分) + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Messages []*GetMessagesItem `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages"` + LastUpdated string `protobuf:"bytes,3,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,4,opt,name=nextUpdate,proto3" json:"nextUpdate"` + ConversationIds []string `protobuf:"bytes,5,rep,name=conversationIds,proto3" json:"conversationIds"` + ConversationsDetails []*ConversationDetail `protobuf:"bytes,6,rep,name=conversationsDetails,proto3" json:"conversationsDetails"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` + ErrMsg string `protobuf:"bytes,9,opt,name=errMsg,json=message,proto3" json:"errMsg"` // 错误消息(JSON 字段名为 "message",但 proto 字段名为 errMsg 以区分) } func (x *GetMessagesResponse) Reset() { @@ -4551,12 +4559,12 @@ type PostCommentRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment,omitempty"` - Platforms []string `protobuf:"bytes,3,rep,name=platforms,proto3" json:"platforms,omitempty"` - SearchPlatformId bool `protobuf:"varint,4,opt,name=searchPlatformId,proto3" json:"searchPlatformId,omitempty"` - MediaUrls []string `protobuf:"bytes,5,rep,name=mediaUrls,proto3" json:"mediaUrls,omitempty"` - ProfileKey string `protobuf:"bytes,6,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment"` + Platforms []string `protobuf:"bytes,3,rep,name=platforms,proto3" json:"platforms"` + SearchPlatformId bool `protobuf:"varint,4,opt,name=searchPlatformId,proto3" json:"searchPlatformId"` + MediaUrls []string `protobuf:"bytes,5,rep,name=mediaUrls,proto3" json:"mediaUrls"` + ProfileKey string `protobuf:"bytes,6,opt,name=profileKey,proto3" json:"profileKey"` } func (x *PostCommentRequest) Reset() { @@ -4639,10 +4647,10 @@ type InstagramCommentResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform"` } func (x *InstagramCommentResponse) Reset() { @@ -4711,11 +4719,11 @@ type TikTokCommentResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"` - VideoId string `protobuf:"bytes,5,opt,name=videoId,proto3" json:"videoId,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform"` + VideoId string `protobuf:"bytes,5,opt,name=videoId,proto3" json:"videoId"` } func (x *TikTokCommentResponse) Reset() { @@ -4791,12 +4799,12 @@ type BlueskyCommentResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Cid string `protobuf:"bytes,3,opt,name=cid,proto3" json:"cid,omitempty"` - Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"` - PostUrl string `protobuf:"bytes,6,opt,name=postUrl,proto3" json:"postUrl,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Cid string `protobuf:"bytes,3,opt,name=cid,proto3" json:"cid"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` + PostUrl string `protobuf:"bytes,6,opt,name=postUrl,proto3" json:"postUrl"` } func (x *BlueskyCommentResponse) Reset() { @@ -4879,10 +4887,10 @@ type FacebookCommentResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform"` } func (x *FacebookCommentResponse) Reset() { @@ -4951,11 +4959,11 @@ type LinkedInCommentResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment,omitempty"` - CommentUrn string `protobuf:"bytes,4,opt,name=commentUrn,proto3" json:"commentUrn,omitempty"` - Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + CommentUrn string `protobuf:"bytes,4,opt,name=commentUrn,proto3" json:"commentUrn"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` } func (x *LinkedInCommentResponse) Reset() { @@ -5031,10 +5039,10 @@ type TwitterCommentResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment,omitempty"` - PostUrl string `protobuf:"bytes,4,opt,name=postUrl,proto3" json:"postUrl,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + PostUrl string `protobuf:"bytes,4,opt,name=postUrl,proto3" json:"postUrl"` } func (x *TwitterCommentResponse) Reset() { @@ -5103,10 +5111,10 @@ type YouTubeCommentResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Comment string `protobuf:"bytes,3,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,4,opt,name=platform,proto3" json:"platform"` } func (x *YouTubeCommentResponse) Reset() { @@ -5175,14 +5183,14 @@ type PlatformError struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` - Code int32 `protobuf:"varint,3,opt,name=code,proto3" json:"code,omitempty"` - Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"` - Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"` - Post string `protobuf:"bytes,6,opt,name=post,proto3" json:"post,omitempty"` // 重复评论错误时包含的评论内容 - Detail string `protobuf:"bytes,7,opt,name=detail,proto3" json:"detail,omitempty"` // 错误详情 - Id string `protobuf:"bytes,8,opt,name=id,proto3" json:"id,omitempty"` // Ayrshare Post ID(错误响应中可能包含) + Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + Code int32 `protobuf:"varint,3,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` + Post string `protobuf:"bytes,6,opt,name=post,proto3" json:"post"` // 重复评论错误时包含的评论内容 + Detail string `protobuf:"bytes,7,opt,name=detail,proto3" json:"detail"` // 错误详情 + Id string `protobuf:"bytes,8,opt,name=id,proto3" json:"id"` // Ayrshare Post ID(错误响应中可能包含) } func (x *PlatformError) Reset() { @@ -5279,23 +5287,23 @@ type PostCommentResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentID string `protobuf:"bytes,2,opt,name=commentID,proto3" json:"commentID,omitempty"` - CommentIdAlt string `protobuf:"bytes,3,opt,name=commentIdAlt,json=commentId,proto3" json:"commentIdAlt,omitempty"` // 备用字段,用于错误响应 - Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"` - Instagram *InstagramCommentResponse `protobuf:"bytes,5,opt,name=instagram,proto3" json:"instagram,omitempty"` - Tiktok *TikTokCommentResponse `protobuf:"bytes,6,opt,name=tiktok,proto3" json:"tiktok,omitempty"` - Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action,omitempty"` - Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code,omitempty"` - Message string `protobuf:"bytes,9,opt,name=message,proto3" json:"message,omitempty"` - Platform string `protobuf:"bytes,10,opt,name=platform,proto3" json:"platform,omitempty"` - Errors []*PlatformError `protobuf:"bytes,11,rep,name=errors,proto3" json:"errors,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentID string `protobuf:"bytes,2,opt,name=commentID,proto3" json:"commentID"` + CommentIdAlt string `protobuf:"bytes,3,opt,name=commentIdAlt,json=commentId,proto3" json:"commentIdAlt"` // 备用字段,用于错误响应 + Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id"` + Instagram *InstagramCommentResponse `protobuf:"bytes,5,opt,name=instagram,proto3" json:"instagram"` + Tiktok *TikTokCommentResponse `protobuf:"bytes,6,opt,name=tiktok,proto3" json:"tiktok"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,9,opt,name=message,proto3" json:"message"` + Platform string `protobuf:"bytes,10,opt,name=platform,proto3" json:"platform"` + Errors []*PlatformError `protobuf:"bytes,11,rep,name=errors,proto3" json:"errors"` // 其它平台的发布评论结果 - Bluesky *BlueskyCommentResponse `protobuf:"bytes,12,opt,name=bluesky,proto3" json:"bluesky,omitempty"` - Facebook *FacebookCommentResponse `protobuf:"bytes,13,opt,name=facebook,proto3" json:"facebook,omitempty"` - Linkedin *LinkedInCommentResponse `protobuf:"bytes,14,opt,name=linkedin,proto3" json:"linkedin,omitempty"` - Twitter *TwitterCommentResponse `protobuf:"bytes,15,opt,name=twitter,proto3" json:"twitter,omitempty"` - Youtube *YouTubeCommentResponse `protobuf:"bytes,16,opt,name=youtube,proto3" json:"youtube,omitempty"` + Bluesky *BlueskyCommentResponse `protobuf:"bytes,12,opt,name=bluesky,proto3" json:"bluesky"` + Facebook *FacebookCommentResponse `protobuf:"bytes,13,opt,name=facebook,proto3" json:"facebook"` + Linkedin *LinkedInCommentResponse `protobuf:"bytes,14,opt,name=linkedin,proto3" json:"linkedin"` + Twitter *TwitterCommentResponse `protobuf:"bytes,15,opt,name=twitter,proto3" json:"twitter"` + Youtube *YouTubeCommentResponse `protobuf:"bytes,16,opt,name=youtube,proto3" json:"youtube"` } func (x *PostCommentResponse) Reset() { @@ -5448,8 +5456,8 @@ type GetCommentRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` } func (x *GetCommentRequest) Reset() { @@ -5504,9 +5512,9 @@ type InstagramUser struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` - Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Username string `protobuf:"bytes,3,opt,name=username,proto3" json:"username"` } func (x *InstagramUser) Reset() { @@ -5568,7 +5576,7 @@ type InstagramUserInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` } func (x *InstagramUserInfo) Reset() { @@ -5616,20 +5624,20 @@ type InstagramComment struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created,omitempty"` - From *InstagramUser `protobuf:"bytes,5,opt,name=from,proto3" json:"from,omitempty"` - Hidden bool `protobuf:"varint,6,opt,name=hidden,proto3" json:"hidden,omitempty"` - LikeCount int32 `protobuf:"varint,7,opt,name=likeCount,proto3" json:"likeCount,omitempty"` - ParentId string `protobuf:"bytes,8,opt,name=parentId,proto3" json:"parentId,omitempty"` - Platform string `protobuf:"bytes,9,opt,name=platform,proto3" json:"platform,omitempty"` - PostId string `protobuf:"bytes,10,opt,name=postId,proto3" json:"postId,omitempty"` - Replies []*InstagramComment `protobuf:"bytes,11,rep,name=replies,proto3" json:"replies,omitempty"` - User *InstagramUserInfo `protobuf:"bytes,12,opt,name=user,proto3" json:"user,omitempty"` - UserName string `protobuf:"bytes,13,opt,name=userName,proto3" json:"userName,omitempty"` - UsernameAlt string `protobuf:"bytes,14,opt,name=usernameAlt,json=username,proto3" json:"usernameAlt,omitempty"` // 备用字段,用于回复评论 + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + From *InstagramUser `protobuf:"bytes,5,opt,name=from,proto3" json:"from"` + Hidden bool `protobuf:"varint,6,opt,name=hidden,proto3" json:"hidden"` + LikeCount int32 `protobuf:"varint,7,opt,name=likeCount,proto3" json:"likeCount"` + ParentId string `protobuf:"bytes,8,opt,name=parentId,proto3" json:"parentId"` + Platform string `protobuf:"bytes,9,opt,name=platform,proto3" json:"platform"` + PostId string `protobuf:"bytes,10,opt,name=postId,proto3" json:"postId"` + Replies []*InstagramComment `protobuf:"bytes,11,rep,name=replies,proto3" json:"replies"` + User *InstagramUserInfo `protobuf:"bytes,12,opt,name=user,proto3" json:"user"` + UserName string `protobuf:"bytes,13,opt,name=userName,proto3" json:"userName"` + UsernameAlt string `protobuf:"bytes,14,opt,name=usernameAlt,json=username,proto3" json:"usernameAlt"` // 备用字段,用于回复评论 } func (x *InstagramComment) Reset() { @@ -5768,25 +5776,25 @@ type TikTokComment struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Created string `protobuf:"bytes,3,opt,name=created,proto3" json:"created,omitempty"` - CreateTime string `protobuf:"bytes,4,opt,name=createTime,proto3" json:"createTime,omitempty"` - DisplayName string `protobuf:"bytes,5,opt,name=displayName,proto3" json:"displayName,omitempty"` - Liked bool `protobuf:"varint,6,opt,name=liked,proto3" json:"liked,omitempty"` - Likes int32 `protobuf:"varint,7,opt,name=likes,proto3" json:"likes,omitempty"` - LikeCount int32 `protobuf:"varint,8,opt,name=likeCount,proto3" json:"likeCount,omitempty"` - Owner bool `protobuf:"varint,9,opt,name=owner,proto3" json:"owner,omitempty"` - ParentCommentId string `protobuf:"bytes,10,opt,name=parentCommentId,proto3" json:"parentCommentId,omitempty"` - Pinned bool `protobuf:"varint,11,opt,name=pinned,proto3" json:"pinned,omitempty"` - Platform string `protobuf:"bytes,12,opt,name=platform,proto3" json:"platform,omitempty"` - ProfileImageUrl string `protobuf:"bytes,13,opt,name=profileImageUrl,proto3" json:"profileImageUrl,omitempty"` - Replies []*TikTokComment `protobuf:"bytes,14,rep,name=replies,proto3" json:"replies,omitempty"` - Status string `protobuf:"bytes,15,opt,name=status,proto3" json:"status,omitempty"` - UserId string `protobuf:"bytes,16,opt,name=userId,proto3" json:"userId,omitempty"` - Username string `protobuf:"bytes,17,opt,name=username,proto3" json:"username,omitempty"` - VideoId string `protobuf:"bytes,18,opt,name=videoId,proto3" json:"videoId,omitempty"` - Visibility string `protobuf:"bytes,19,opt,name=visibility,proto3" json:"visibility,omitempty"` + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,3,opt,name=created,proto3" json:"created"` + CreateTime string `protobuf:"bytes,4,opt,name=createTime,proto3" json:"createTime"` + DisplayName string `protobuf:"bytes,5,opt,name=displayName,proto3" json:"displayName"` + Liked bool `protobuf:"varint,6,opt,name=liked,proto3" json:"liked"` + Likes int32 `protobuf:"varint,7,opt,name=likes,proto3" json:"likes"` + LikeCount int32 `protobuf:"varint,8,opt,name=likeCount,proto3" json:"likeCount"` + Owner bool `protobuf:"varint,9,opt,name=owner,proto3" json:"owner"` + ParentCommentId string `protobuf:"bytes,10,opt,name=parentCommentId,proto3" json:"parentCommentId"` + Pinned bool `protobuf:"varint,11,opt,name=pinned,proto3" json:"pinned"` + Platform string `protobuf:"bytes,12,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,13,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + Replies []*TikTokComment `protobuf:"bytes,14,rep,name=replies,proto3" json:"replies"` + Status string `protobuf:"bytes,15,opt,name=status,proto3" json:"status"` + UserId string `protobuf:"bytes,16,opt,name=userId,proto3" json:"userId"` + Username string `protobuf:"bytes,17,opt,name=username,proto3" json:"username"` + VideoId string `protobuf:"bytes,18,opt,name=videoId,proto3" json:"videoId"` + Visibility string `protobuf:"bytes,19,opt,name=visibility,proto3" json:"visibility"` } func (x *TikTokComment) Reset() { @@ -5960,19 +5968,19 @@ type BlueskyComment struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Created string `protobuf:"bytes,3,opt,name=created,proto3" json:"created,omitempty"` - DisplayName string `protobuf:"bytes,4,opt,name=displayName,proto3" json:"displayName,omitempty"` - LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount,omitempty"` - Platform string `protobuf:"bytes,6,opt,name=platform,proto3" json:"platform,omitempty"` - ProfileImageUrl string `protobuf:"bytes,7,opt,name=profileImageUrl,proto3" json:"profileImageUrl,omitempty"` - QuoteCount int32 `protobuf:"varint,8,opt,name=quoteCount,proto3" json:"quoteCount,omitempty"` - Replies []*BlueskyComment `protobuf:"bytes,9,rep,name=replies,proto3" json:"replies,omitempty"` - ReplyCount int32 `protobuf:"varint,10,opt,name=replyCount,proto3" json:"replyCount,omitempty"` - ReplyTo string `protobuf:"bytes,11,opt,name=replyTo,proto3" json:"replyTo,omitempty"` - RepostCount int32 `protobuf:"varint,12,opt,name=repostCount,proto3" json:"repostCount,omitempty"` - UserName string `protobuf:"bytes,13,opt,name=userName,proto3" json:"userName,omitempty"` + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,3,opt,name=created,proto3" json:"created"` + DisplayName string `protobuf:"bytes,4,opt,name=displayName,proto3" json:"displayName"` + LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount"` + Platform string `protobuf:"bytes,6,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,7,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + QuoteCount int32 `protobuf:"varint,8,opt,name=quoteCount,proto3" json:"quoteCount"` + Replies []*BlueskyComment `protobuf:"bytes,9,rep,name=replies,proto3" json:"replies"` + ReplyCount int32 `protobuf:"varint,10,opt,name=replyCount,proto3" json:"replyCount"` + ReplyTo string `protobuf:"bytes,11,opt,name=replyTo,proto3" json:"replyTo"` + RepostCount int32 `protobuf:"varint,12,opt,name=repostCount,proto3" json:"repostCount"` + UserName string `protobuf:"bytes,13,opt,name=userName,proto3" json:"userName"` } func (x *BlueskyComment) Reset() { @@ -6104,8 +6112,8 @@ type FacebookUser struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` } func (x *FacebookUser) Reset() { @@ -6160,10 +6168,10 @@ type FacebookParent struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - CreatedTime string `protobuf:"bytes,1,opt,name=createdTime,proto3" json:"createdTime,omitempty"` - From *FacebookUser `protobuf:"bytes,2,opt,name=from,proto3" json:"from,omitempty"` - Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"` - Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"` + CreatedTime string `protobuf:"bytes,1,opt,name=createdTime,proto3" json:"createdTime"` + From *FacebookUser `protobuf:"bytes,2,opt,name=from,proto3" json:"from"` + Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message"` + Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id"` } func (x *FacebookParent) Reset() { @@ -6232,18 +6240,18 @@ type FacebookComment struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - CommentCount int32 `protobuf:"varint,3,opt,name=commentCount,proto3" json:"commentCount,omitempty"` - CommentUrl string `protobuf:"bytes,4,opt,name=commentUrl,proto3" json:"commentUrl,omitempty"` - Company bool `protobuf:"varint,5,opt,name=company,proto3" json:"company,omitempty"` - Created string `protobuf:"bytes,6,opt,name=created,proto3" json:"created,omitempty"` - From *FacebookUser `protobuf:"bytes,7,opt,name=from,proto3" json:"from,omitempty"` - LikeCount int32 `protobuf:"varint,8,opt,name=likeCount,proto3" json:"likeCount,omitempty"` - Parent *FacebookParent `protobuf:"bytes,9,opt,name=parent,proto3" json:"parent,omitempty"` - Platform string `protobuf:"bytes,10,opt,name=platform,proto3" json:"platform,omitempty"` - UserLikes bool `protobuf:"varint,11,opt,name=userLikes,proto3" json:"userLikes,omitempty"` - Replies []*FacebookComment `protobuf:"bytes,12,rep,name=replies,proto3" json:"replies,omitempty"` + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + CommentCount int32 `protobuf:"varint,3,opt,name=commentCount,proto3" json:"commentCount"` + CommentUrl string `protobuf:"bytes,4,opt,name=commentUrl,proto3" json:"commentUrl"` + Company bool `protobuf:"varint,5,opt,name=company,proto3" json:"company"` + Created string `protobuf:"bytes,6,opt,name=created,proto3" json:"created"` + From *FacebookUser `protobuf:"bytes,7,opt,name=from,proto3" json:"from"` + LikeCount int32 `protobuf:"varint,8,opt,name=likeCount,proto3" json:"likeCount"` + Parent *FacebookParent `protobuf:"bytes,9,opt,name=parent,proto3" json:"parent"` + Platform string `protobuf:"bytes,10,opt,name=platform,proto3" json:"platform"` + UserLikes bool `protobuf:"varint,11,opt,name=userLikes,proto3" json:"userLikes"` + Replies []*FacebookComment `protobuf:"bytes,12,rep,name=replies,proto3" json:"replies"` } func (x *FacebookComment) Reset() { @@ -6368,8 +6376,8 @@ type LinkedInMedia struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` - Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"` + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type"` + Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url"` } func (x *LinkedInMedia) Reset() { @@ -6424,10 +6432,10 @@ type LinkedInFrom struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` - Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"` - Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` + Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url"` + Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description"` } func (x *LinkedInFrom) Reset() { @@ -6496,19 +6504,19 @@ type LinkedInComment struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - CommentUrn string `protobuf:"bytes,3,opt,name=commentUrn,proto3" json:"commentUrn,omitempty"` - Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created,omitempty"` - From *LinkedInFrom `protobuf:"bytes,5,opt,name=from,proto3" json:"from,omitempty"` - LikeCount int32 `protobuf:"varint,6,opt,name=likeCount,proto3" json:"likeCount,omitempty"` - Media []*LinkedInMedia `protobuf:"bytes,7,rep,name=media,proto3" json:"media,omitempty"` - Platform string `protobuf:"bytes,8,opt,name=platform,proto3" json:"platform,omitempty"` - ProfileImageUrl string `protobuf:"bytes,9,opt,name=profileImageUrl,proto3" json:"profileImageUrl,omitempty"` - UserName string `protobuf:"bytes,10,opt,name=userName,proto3" json:"userName,omitempty"` - Founded int32 `protobuf:"varint,11,opt,name=founded,proto3" json:"founded,omitempty"` - OrganizationType string `protobuf:"bytes,12,opt,name=organizationType,proto3" json:"organizationType,omitempty"` - Website string `protobuf:"bytes,13,opt,name=website,proto3" json:"website,omitempty"` + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + CommentUrn string `protobuf:"bytes,3,opt,name=commentUrn,proto3" json:"commentUrn"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + From *LinkedInFrom `protobuf:"bytes,5,opt,name=from,proto3" json:"from"` + LikeCount int32 `protobuf:"varint,6,opt,name=likeCount,proto3" json:"likeCount"` + Media []*LinkedInMedia `protobuf:"bytes,7,rep,name=media,proto3" json:"media"` + Platform string `protobuf:"bytes,8,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,9,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + UserName string `protobuf:"bytes,10,opt,name=userName,proto3" json:"userName"` + Founded int32 `protobuf:"varint,11,opt,name=founded,proto3" json:"founded"` + OrganizationType string `protobuf:"bytes,12,opt,name=organizationType,proto3" json:"organizationType"` + Website string `protobuf:"bytes,13,opt,name=website,proto3" json:"website"` } func (x *LinkedInComment) Reset() { @@ -6640,8 +6648,8 @@ type RedditUser struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` } func (x *RedditUser) Reset() { @@ -6696,14 +6704,14 @@ type RedditComment struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Created string `protobuf:"bytes,3,opt,name=created,proto3" json:"created,omitempty"` - From *RedditUser `protobuf:"bytes,4,opt,name=from,proto3" json:"from,omitempty"` - CommentUrl string `protobuf:"bytes,5,opt,name=commentUrl,proto3" json:"commentUrl,omitempty"` - Subreddit string `protobuf:"bytes,6,opt,name=subreddit,proto3" json:"subreddit,omitempty"` - Ups int32 `protobuf:"varint,7,opt,name=ups,proto3" json:"ups,omitempty"` - IsSubmitter bool `protobuf:"varint,8,opt,name=isSubmitter,proto3" json:"isSubmitter,omitempty"` + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,3,opt,name=created,proto3" json:"created"` + From *RedditUser `protobuf:"bytes,4,opt,name=from,proto3" json:"from"` + CommentUrl string `protobuf:"bytes,5,opt,name=commentUrl,proto3" json:"commentUrl"` + Subreddit string `protobuf:"bytes,6,opt,name=subreddit,proto3" json:"subreddit"` + Ups int32 `protobuf:"varint,7,opt,name=ups,proto3" json:"ups"` + IsSubmitter bool `protobuf:"varint,8,opt,name=isSubmitter,proto3" json:"isSubmitter"` } func (x *RedditComment) Reset() { @@ -6800,22 +6808,22 @@ type ThreadsComment struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - CommentUrl string `protobuf:"bytes,3,opt,name=commentUrl,proto3" json:"commentUrl,omitempty"` - Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created,omitempty"` - HasReplies bool `protobuf:"varint,5,opt,name=hasReplies,proto3" json:"hasReplies,omitempty"` - IsQuotePost bool `protobuf:"varint,6,opt,name=isQuotePost,proto3" json:"isQuotePost,omitempty"` - IsReply bool `protobuf:"varint,7,opt,name=isReply,proto3" json:"isReply,omitempty"` - IsReplyOwnedByMe bool `protobuf:"varint,8,opt,name=isReplyOwnedByMe,proto3" json:"isReplyOwnedByMe,omitempty"` - MediaType string `protobuf:"bytes,9,opt,name=mediaType,proto3" json:"mediaType,omitempty"` - ParentId string `protobuf:"bytes,10,opt,name=parentId,proto3" json:"parentId,omitempty"` - Platform string `protobuf:"bytes,11,opt,name=platform,proto3" json:"platform,omitempty"` - PostId string `protobuf:"bytes,12,opt,name=postId,proto3" json:"postId,omitempty"` - Replies []*ThreadsComment `protobuf:"bytes,13,rep,name=replies,proto3" json:"replies,omitempty"` - ReplyAudience string `protobuf:"bytes,14,opt,name=replyAudience,proto3" json:"replyAudience,omitempty"` - Shortcode string `protobuf:"bytes,15,opt,name=shortcode,proto3" json:"shortcode,omitempty"` - UserName string `protobuf:"bytes,16,opt,name=userName,proto3" json:"userName,omitempty"` + Comment string `protobuf:"bytes,1,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + CommentUrl string `protobuf:"bytes,3,opt,name=commentUrl,proto3" json:"commentUrl"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + HasReplies bool `protobuf:"varint,5,opt,name=hasReplies,proto3" json:"hasReplies"` + IsQuotePost bool `protobuf:"varint,6,opt,name=isQuotePost,proto3" json:"isQuotePost"` + IsReply bool `protobuf:"varint,7,opt,name=isReply,proto3" json:"isReply"` + IsReplyOwnedByMe bool `protobuf:"varint,8,opt,name=isReplyOwnedByMe,proto3" json:"isReplyOwnedByMe"` + MediaType string `protobuf:"bytes,9,opt,name=mediaType,proto3" json:"mediaType"` + ParentId string `protobuf:"bytes,10,opt,name=parentId,proto3" json:"parentId"` + Platform string `protobuf:"bytes,11,opt,name=platform,proto3" json:"platform"` + PostId string `protobuf:"bytes,12,opt,name=postId,proto3" json:"postId"` + Replies []*ThreadsComment `protobuf:"bytes,13,rep,name=replies,proto3" json:"replies"` + ReplyAudience string `protobuf:"bytes,14,opt,name=replyAudience,proto3" json:"replyAudience"` + Shortcode string `protobuf:"bytes,15,opt,name=shortcode,proto3" json:"shortcode"` + UserName string `protobuf:"bytes,16,opt,name=userName,proto3" json:"userName"` } func (x *ThreadsComment) Reset() { @@ -6968,12 +6976,12 @@ type TwitterPublicMetrics struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - FollowersCount int32 `protobuf:"varint,1,opt,name=followersCount,proto3" json:"followersCount,omitempty"` - FollowingCount int32 `protobuf:"varint,2,opt,name=followingCount,proto3" json:"followingCount,omitempty"` - TweetCount int32 `protobuf:"varint,3,opt,name=tweetCount,proto3" json:"tweetCount,omitempty"` - ListedCount int32 `protobuf:"varint,4,opt,name=listedCount,proto3" json:"listedCount,omitempty"` - LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount,omitempty"` - MediaCount int32 `protobuf:"varint,6,opt,name=mediaCount,proto3" json:"mediaCount,omitempty"` + FollowersCount int32 `protobuf:"varint,1,opt,name=followersCount,proto3" json:"followersCount"` + FollowingCount int32 `protobuf:"varint,2,opt,name=followingCount,proto3" json:"followingCount"` + TweetCount int32 `protobuf:"varint,3,opt,name=tweetCount,proto3" json:"tweetCount"` + ListedCount int32 `protobuf:"varint,4,opt,name=listedCount,proto3" json:"listedCount"` + LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount"` + MediaCount int32 `protobuf:"varint,6,opt,name=mediaCount,proto3" json:"mediaCount"` } func (x *TwitterPublicMetrics) Reset() { @@ -7056,8 +7064,8 @@ type TwitterReferencedTweet struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` - Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id,omitempty"` + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type"` + Id string `protobuf:"bytes,2,opt,name=id,proto3" json:"id"` } func (x *TwitterReferencedTweet) Reset() { @@ -7112,15 +7120,15 @@ type TwitterReplyTo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - CreatedAt string `protobuf:"bytes,1,opt,name=createdAt,proto3" json:"createdAt,omitempty"` - Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"` - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - Location string `protobuf:"bytes,4,opt,name=location,proto3" json:"location,omitempty"` - Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"` - ProfileImageUrl string `protobuf:"bytes,6,opt,name=profileImageUrl,proto3" json:"profileImageUrl,omitempty"` - PublicMetrics *TwitterPublicMetrics `protobuf:"bytes,7,opt,name=publicMetrics,proto3" json:"publicMetrics,omitempty"` - Url string `protobuf:"bytes,8,opt,name=url,proto3" json:"url,omitempty"` - Username string `protobuf:"bytes,9,opt,name=username,proto3" json:"username,omitempty"` + CreatedAt string `protobuf:"bytes,1,opt,name=createdAt,proto3" json:"createdAt"` + Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` + Location string `protobuf:"bytes,4,opt,name=location,proto3" json:"location"` + Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name"` + ProfileImageUrl string `protobuf:"bytes,6,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + PublicMetrics *TwitterPublicMetrics `protobuf:"bytes,7,opt,name=publicMetrics,proto3" json:"publicMetrics"` + Url string `protobuf:"bytes,8,opt,name=url,proto3" json:"url"` + Username string `protobuf:"bytes,9,opt,name=username,proto3" json:"username"` } func (x *TwitterReplyTo) Reset() { @@ -7224,24 +7232,24 @@ type TwitterComment struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - BookmarkCount int32 `protobuf:"varint,1,opt,name=bookmarkCount,proto3" json:"bookmarkCount,omitempty"` - Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment,omitempty"` - CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId,omitempty"` - Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created,omitempty"` - Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"` - Id string `protobuf:"bytes,6,opt,name=id,proto3" json:"id,omitempty"` - ImpressionCount int32 `protobuf:"varint,7,opt,name=impressionCount,proto3" json:"impressionCount,omitempty"` - LikeCount int32 `protobuf:"varint,8,opt,name=likeCount,proto3" json:"likeCount,omitempty"` - Name string `protobuf:"bytes,9,opt,name=name,proto3" json:"name,omitempty"` - Platform string `protobuf:"bytes,10,opt,name=platform,proto3" json:"platform,omitempty"` - ProfileImageUrl string `protobuf:"bytes,11,opt,name=profileImageUrl,proto3" json:"profileImageUrl,omitempty"` - PublicMetrics *TwitterPublicMetrics `protobuf:"bytes,12,opt,name=publicMetrics,proto3" json:"publicMetrics,omitempty"` - QuoteCount int32 `protobuf:"varint,13,opt,name=quoteCount,proto3" json:"quoteCount,omitempty"` - ReferencedTweets []*TwitterReferencedTweet `protobuf:"bytes,14,rep,name=referencedTweets,proto3" json:"referencedTweets,omitempty"` - ReplyCount int32 `protobuf:"varint,15,opt,name=replyCount,proto3" json:"replyCount,omitempty"` - ReplyTo *TwitterReplyTo `protobuf:"bytes,16,opt,name=replyTo,proto3" json:"replyTo,omitempty"` - ThreadNumber int32 `protobuf:"varint,17,opt,name=threadNumber,proto3" json:"threadNumber,omitempty"` - UserName string `protobuf:"bytes,18,opt,name=userName,proto3" json:"userName,omitempty"` + BookmarkCount int32 `protobuf:"varint,1,opt,name=bookmarkCount,proto3" json:"bookmarkCount"` + Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description"` + Id string `protobuf:"bytes,6,opt,name=id,proto3" json:"id"` + ImpressionCount int32 `protobuf:"varint,7,opt,name=impressionCount,proto3" json:"impressionCount"` + LikeCount int32 `protobuf:"varint,8,opt,name=likeCount,proto3" json:"likeCount"` + Name string `protobuf:"bytes,9,opt,name=name,proto3" json:"name"` + Platform string `protobuf:"bytes,10,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,11,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + PublicMetrics *TwitterPublicMetrics `protobuf:"bytes,12,opt,name=publicMetrics,proto3" json:"publicMetrics"` + QuoteCount int32 `protobuf:"varint,13,opt,name=quoteCount,proto3" json:"quoteCount"` + ReferencedTweets []*TwitterReferencedTweet `protobuf:"bytes,14,rep,name=referencedTweets,proto3" json:"referencedTweets"` + ReplyCount int32 `protobuf:"varint,15,opt,name=replyCount,proto3" json:"replyCount"` + ReplyTo *TwitterReplyTo `protobuf:"bytes,16,opt,name=replyTo,proto3" json:"replyTo"` + ThreadNumber int32 `protobuf:"varint,17,opt,name=threadNumber,proto3" json:"threadNumber"` + UserName string `protobuf:"bytes,18,opt,name=userName,proto3" json:"userName"` } func (x *TwitterComment) Reset() { @@ -7408,15 +7416,15 @@ type YouTubeReply struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ChannelUrl string `protobuf:"bytes,1,opt,name=channelUrl,proto3" json:"channelUrl,omitempty"` - Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment,omitempty"` - CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId,omitempty"` - Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created,omitempty"` - LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount,omitempty"` - Platform string `protobuf:"bytes,6,opt,name=platform,proto3" json:"platform,omitempty"` - ProfileImageUrl string `protobuf:"bytes,7,opt,name=profileImageUrl,proto3" json:"profileImageUrl,omitempty"` - UserName string `protobuf:"bytes,8,opt,name=userName,proto3" json:"userName,omitempty"` - ParentId string `protobuf:"bytes,9,opt,name=parentId,proto3" json:"parentId,omitempty"` + ChannelUrl string `protobuf:"bytes,1,opt,name=channelUrl,proto3" json:"channelUrl"` + Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount"` + Platform string `protobuf:"bytes,6,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,7,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + UserName string `protobuf:"bytes,8,opt,name=userName,proto3" json:"userName"` + ParentId string `protobuf:"bytes,9,opt,name=parentId,proto3" json:"parentId"` } func (x *YouTubeReply) Reset() { @@ -7520,16 +7528,16 @@ type YouTubeComment struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ChannelUrl string `protobuf:"bytes,1,opt,name=channelUrl,proto3" json:"channelUrl,omitempty"` - Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment,omitempty"` - CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId,omitempty"` - Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created,omitempty"` - IsPublic bool `protobuf:"varint,5,opt,name=isPublic,proto3" json:"isPublic,omitempty"` - LikeCount int32 `protobuf:"varint,6,opt,name=likeCount,proto3" json:"likeCount,omitempty"` - Platform string `protobuf:"bytes,7,opt,name=platform,proto3" json:"platform,omitempty"` - ProfileImageUrl string `protobuf:"bytes,8,opt,name=profileImageUrl,proto3" json:"profileImageUrl,omitempty"` - Replies []*YouTubeReply `protobuf:"bytes,9,rep,name=replies,proto3" json:"replies,omitempty"` - UserName string `protobuf:"bytes,10,opt,name=userName,proto3" json:"userName,omitempty"` + ChannelUrl string `protobuf:"bytes,1,opt,name=channelUrl,proto3" json:"channelUrl"` + Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment"` + CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId"` + Created string `protobuf:"bytes,4,opt,name=created,proto3" json:"created"` + IsPublic bool `protobuf:"varint,5,opt,name=isPublic,proto3" json:"isPublic"` + LikeCount int32 `protobuf:"varint,6,opt,name=likeCount,proto3" json:"likeCount"` + Platform string `protobuf:"bytes,7,opt,name=platform,proto3" json:"platform"` + ProfileImageUrl string `protobuf:"bytes,8,opt,name=profileImageUrl,proto3" json:"profileImageUrl"` + Replies []*YouTubeReply `protobuf:"bytes,9,rep,name=replies,proto3" json:"replies"` + UserName string `protobuf:"bytes,10,opt,name=userName,proto3" json:"userName"` } func (x *YouTubeComment) Reset() { @@ -7640,23 +7648,23 @@ type GetCommentResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Instagram []*InstagramComment `protobuf:"bytes,1,rep,name=instagram,proto3" json:"instagram,omitempty"` - Tiktok []*TikTokComment `protobuf:"bytes,2,rep,name=tiktok,proto3" json:"tiktok,omitempty"` - Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"` - Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"` - LastUpdated string `protobuf:"bytes,5,opt,name=lastUpdated,proto3" json:"lastUpdated,omitempty"` - NextUpdate string `protobuf:"bytes,6,opt,name=nextUpdate,proto3" json:"nextUpdate,omitempty"` - Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action,omitempty"` - Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code,omitempty"` - Message string `protobuf:"bytes,9,opt,name=message,proto3" json:"message,omitempty"` + Instagram []*InstagramComment `protobuf:"bytes,1,rep,name=instagram,proto3" json:"instagram"` + Tiktok []*TikTokComment `protobuf:"bytes,2,rep,name=tiktok,proto3" json:"tiktok"` + Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status"` + Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id"` + LastUpdated string `protobuf:"bytes,5,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,6,opt,name=nextUpdate,proto3" json:"nextUpdate"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,9,opt,name=message,proto3" json:"message"` // 其它平台的评论列表 - Bluesky []*BlueskyComment `protobuf:"bytes,10,rep,name=bluesky,proto3" json:"bluesky,omitempty"` - Facebook []*FacebookComment `protobuf:"bytes,11,rep,name=facebook,proto3" json:"facebook,omitempty"` - Linkedin []*LinkedInComment `protobuf:"bytes,12,rep,name=linkedin,proto3" json:"linkedin,omitempty"` - Reddit []*RedditComment `protobuf:"bytes,13,rep,name=reddit,proto3" json:"reddit,omitempty"` - Threads []*ThreadsComment `protobuf:"bytes,14,rep,name=threads,proto3" json:"threads,omitempty"` - Twitter []*TwitterComment `protobuf:"bytes,15,rep,name=twitter,proto3" json:"twitter,omitempty"` - Youtube []*YouTubeComment `protobuf:"bytes,16,rep,name=youtube,proto3" json:"youtube,omitempty"` + Bluesky []*BlueskyComment `protobuf:"bytes,10,rep,name=bluesky,proto3" json:"bluesky"` + Facebook []*FacebookComment `protobuf:"bytes,11,rep,name=facebook,proto3" json:"facebook"` + Linkedin []*LinkedInComment `protobuf:"bytes,12,rep,name=linkedin,proto3" json:"linkedin"` + Reddit []*RedditComment `protobuf:"bytes,13,rep,name=reddit,proto3" json:"reddit"` + Threads []*ThreadsComment `protobuf:"bytes,14,rep,name=threads,proto3" json:"threads"` + Twitter []*TwitterComment `protobuf:"bytes,15,rep,name=twitter,proto3" json:"twitter"` + Youtube []*YouTubeComment `protobuf:"bytes,16,rep,name=youtube,proto3" json:"youtube"` } func (x *GetCommentResponse) Reset() { @@ -7809,11 +7817,11 @@ type DeleteCommentRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Platforms []string `protobuf:"bytes,2,rep,name=platforms,proto3" json:"platforms,omitempty"` - Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform,omitempty"` - SearchPlatformId bool `protobuf:"varint,4,opt,name=searchPlatformId,proto3" json:"searchPlatformId,omitempty"` - ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Platforms []string `protobuf:"bytes,2,rep,name=platforms,proto3" json:"platforms"` + Platform string `protobuf:"bytes,3,opt,name=platform,proto3" json:"platform"` + SearchPlatformId bool `protobuf:"varint,4,opt,name=searchPlatformId,proto3" json:"searchPlatformId"` + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` } func (x *DeleteCommentRequest) Reset() { @@ -7889,10 +7897,10 @@ type InstagramDeleteResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` + Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` } func (x *InstagramDeleteResponse) Reset() { @@ -7961,11 +7969,11 @@ type TikTokDeleteResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action,omitempty"` - Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId,omitempty"` - Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"` - Comment string `protobuf:"bytes,5,opt,name=comment,proto3" json:"comment,omitempty"` + Action string `protobuf:"bytes,1,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,2,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,3,opt,name=commentId,proto3" json:"commentId"` + Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id"` + Comment string `protobuf:"bytes,5,opt,name=comment,proto3" json:"comment"` } func (x *TikTokDeleteResponse) Reset() { @@ -8041,20 +8049,20 @@ type DeleteCommentResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` // Instagram 和 TikTok 可能是单个对象或数组,使用 JSON 字符串存储 - Instagram string `protobuf:"bytes,2,opt,name=instagram,proto3" json:"instagram,omitempty"` - Tiktok string `protobuf:"bytes,3,opt,name=tiktok,proto3" json:"tiktok,omitempty"` - Action string `protobuf:"bytes,4,opt,name=action,proto3" json:"action,omitempty"` - Code int32 `protobuf:"varint,5,opt,name=code,proto3" json:"code,omitempty"` - Message string `protobuf:"bytes,6,opt,name=message,proto3" json:"message,omitempty"` + Instagram string `protobuf:"bytes,2,opt,name=instagram,proto3" json:"instagram"` + Tiktok string `protobuf:"bytes,3,opt,name=tiktok,proto3" json:"tiktok"` + Action string `protobuf:"bytes,4,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,5,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,6,opt,name=message,proto3" json:"message"` // 其它平台删除结果,同样使用 JSON 字符串存储,兼容单条或多条返回 - Bluesky string `protobuf:"bytes,7,opt,name=bluesky,proto3" json:"bluesky,omitempty"` - Facebook string `protobuf:"bytes,8,opt,name=facebook,proto3" json:"facebook,omitempty"` - Linkedin string `protobuf:"bytes,9,opt,name=linkedin,proto3" json:"linkedin,omitempty"` - Threads string `protobuf:"bytes,10,opt,name=threads,proto3" json:"threads,omitempty"` - Twitter string `protobuf:"bytes,11,opt,name=twitter,proto3" json:"twitter,omitempty"` - Youtube string `protobuf:"bytes,12,opt,name=youtube,proto3" json:"youtube,omitempty"` + Bluesky string `protobuf:"bytes,7,opt,name=bluesky,proto3" json:"bluesky"` + Facebook string `protobuf:"bytes,8,opt,name=facebook,proto3" json:"facebook"` + Linkedin string `protobuf:"bytes,9,opt,name=linkedin,proto3" json:"linkedin"` + Threads string `protobuf:"bytes,10,opt,name=threads,proto3" json:"threads"` + Twitter string `protobuf:"bytes,11,opt,name=twitter,proto3" json:"twitter"` + Youtube string `protobuf:"bytes,12,opt,name=youtube,proto3" json:"youtube"` } func (x *DeleteCommentResponse) Reset() { @@ -8179,10 +8187,10 @@ type ReplyCommentRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment,omitempty"` - Platforms []string `protobuf:"bytes,3,rep,name=platforms,proto3" json:"platforms,omitempty"` - ProfileKey string `protobuf:"bytes,4,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Comment string `protobuf:"bytes,2,opt,name=comment,proto3" json:"comment"` + Platforms []string `protobuf:"bytes,3,rep,name=platforms,proto3" json:"platforms"` + ProfileKey string `protobuf:"bytes,4,opt,name=profileKey,proto3" json:"profileKey"` } func (x *ReplyCommentRequest) Reset() { @@ -8251,11 +8259,11 @@ type InstagramReplyResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId,omitempty"` - Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` } func (x *InstagramReplyResponse) Reset() { @@ -8331,12 +8339,12 @@ type TikTokReplyResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId,omitempty"` - Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"` - VideoId string `protobuf:"bytes,6,opt,name=videoId,proto3" json:"videoId,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` + VideoId string `protobuf:"bytes,6,opt,name=videoId,proto3" json:"videoId"` } func (x *TikTokReplyResponse) Reset() { @@ -8419,13 +8427,13 @@ type BlueskyReplyResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId,omitempty"` - Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"` - Cid string `protobuf:"bytes,6,opt,name=cid,proto3" json:"cid,omitempty"` - PostUrl string `protobuf:"bytes,7,opt,name=postUrl,proto3" json:"postUrl,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` + Cid string `protobuf:"bytes,6,opt,name=cid,proto3" json:"cid"` + PostUrl string `protobuf:"bytes,7,opt,name=postUrl,proto3" json:"postUrl"` } func (x *BlueskyReplyResponse) Reset() { @@ -8515,11 +8523,11 @@ type FacebookReplyResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId,omitempty"` - Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` } func (x *FacebookReplyResponse) Reset() { @@ -8595,11 +8603,11 @@ type LinkedInReplyResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId,omitempty"` - Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` } func (x *LinkedInReplyResponse) Reset() { @@ -8675,12 +8683,12 @@ type TwitterReplyResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId,omitempty"` - Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"` - PostUrl string `protobuf:"bytes,6,opt,name=postUrl,proto3" json:"postUrl,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` + PostUrl string `protobuf:"bytes,6,opt,name=postUrl,proto3" json:"postUrl"` } func (x *TwitterReplyResponse) Reset() { @@ -8763,11 +8771,11 @@ type YouTubeReplyResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId,omitempty"` - Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment,omitempty"` - Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + SourceCommentId string `protobuf:"bytes,3,opt,name=sourceCommentId,proto3" json:"sourceCommentId"` + Comment string `protobuf:"bytes,4,opt,name=comment,proto3" json:"comment"` + Platform string `protobuf:"bytes,5,opt,name=platform,proto3" json:"platform"` } func (x *YouTubeReplyResponse) Reset() { @@ -8843,20 +8851,20 @@ type ReplyCommentResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId,omitempty"` - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` - Instagram *InstagramReplyResponse `protobuf:"bytes,4,opt,name=instagram,proto3" json:"instagram,omitempty"` - Tiktok *TikTokReplyResponse `protobuf:"bytes,5,opt,name=tiktok,proto3" json:"tiktok,omitempty"` - Action string `protobuf:"bytes,6,opt,name=action,proto3" json:"action,omitempty"` - Code int32 `protobuf:"varint,7,opt,name=code,proto3" json:"code,omitempty"` - Message string `protobuf:"bytes,8,opt,name=message,proto3" json:"message,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + CommentId string `protobuf:"bytes,2,opt,name=commentId,proto3" json:"commentId"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` + Instagram *InstagramReplyResponse `protobuf:"bytes,4,opt,name=instagram,proto3" json:"instagram"` + Tiktok *TikTokReplyResponse `protobuf:"bytes,5,opt,name=tiktok,proto3" json:"tiktok"` + Action string `protobuf:"bytes,6,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,7,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,8,opt,name=message,proto3" json:"message"` // 其它平台的回复结果 - Bluesky *BlueskyReplyResponse `protobuf:"bytes,9,opt,name=bluesky,proto3" json:"bluesky,omitempty"` - Facebook *FacebookReplyResponse `protobuf:"bytes,10,opt,name=facebook,proto3" json:"facebook,omitempty"` - Linkedin *LinkedInReplyResponse `protobuf:"bytes,11,opt,name=linkedin,proto3" json:"linkedin,omitempty"` - Twitter *TwitterReplyResponse `protobuf:"bytes,12,opt,name=twitter,proto3" json:"twitter,omitempty"` - Youtube *YouTubeReplyResponse `protobuf:"bytes,13,opt,name=youtube,proto3" json:"youtube,omitempty"` + Bluesky *BlueskyReplyResponse `protobuf:"bytes,9,opt,name=bluesky,proto3" json:"bluesky"` + Facebook *FacebookReplyResponse `protobuf:"bytes,10,opt,name=facebook,proto3" json:"facebook"` + Linkedin *LinkedInReplyResponse `protobuf:"bytes,11,opt,name=linkedin,proto3" json:"linkedin"` + Twitter *TwitterReplyResponse `protobuf:"bytes,12,opt,name=twitter,proto3" json:"twitter"` + Youtube *YouTubeReplyResponse `protobuf:"bytes,13,opt,name=youtube,proto3" json:"youtube"` } func (x *ReplyCommentResponse) Reset() { @@ -8988,9 +8996,9 @@ type GetPostAnalyticsRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Platforms []string `protobuf:"bytes,2,rep,name=platforms,proto3" json:"platforms,omitempty"` - ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Platforms []string `protobuf:"bytes,2,rep,name=platforms,proto3" json:"platforms"` + ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` } func (x *GetPostAnalyticsRequest) Reset() { @@ -9052,10 +9060,10 @@ type GetPostAnalyticsBySocialIDRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Platforms []string `protobuf:"bytes,2,rep,name=platforms,proto3" json:"platforms,omitempty"` - SearchPlatformId bool `protobuf:"varint,3,opt,name=searchPlatformId,proto3" json:"searchPlatformId,omitempty"` - ProfileKey string `protobuf:"bytes,4,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Platforms []string `protobuf:"bytes,2,rep,name=platforms,proto3" json:"platforms"` + SearchPlatformId bool `protobuf:"varint,3,opt,name=searchPlatformId,proto3" json:"searchPlatformId"` + ProfileKey string `protobuf:"bytes,4,opt,name=profileKey,proto3" json:"profileKey"` } func (x *GetPostAnalyticsBySocialIDRequest) Reset() { @@ -9124,20 +9132,20 @@ type GetPostAnalyticsResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code,omitempty"` - Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Code int32 `protobuf:"varint,2,opt,name=code,proto3" json:"code"` + Id string `protobuf:"bytes,3,opt,name=id,proto3" json:"id"` // 各平台的分析数据以 JSON 字符串形式存储 - Bluesky string `protobuf:"bytes,4,opt,name=bluesky,proto3" json:"bluesky,omitempty"` - Facebook string `protobuf:"bytes,5,opt,name=facebook,proto3" json:"facebook,omitempty"` - Instagram string `protobuf:"bytes,6,opt,name=instagram,proto3" json:"instagram,omitempty"` - Linkedin string `protobuf:"bytes,7,opt,name=linkedin,proto3" json:"linkedin,omitempty"` - Pinterest string `protobuf:"bytes,8,opt,name=pinterest,proto3" json:"pinterest,omitempty"` - Snapchat string `protobuf:"bytes,9,opt,name=snapchat,proto3" json:"snapchat,omitempty"` - Threads string `protobuf:"bytes,10,opt,name=threads,proto3" json:"threads,omitempty"` - Tiktok string `protobuf:"bytes,11,opt,name=tiktok,proto3" json:"tiktok,omitempty"` - Twitter string `protobuf:"bytes,12,opt,name=twitter,proto3" json:"twitter,omitempty"` - Youtube string `protobuf:"bytes,13,opt,name=youtube,proto3" json:"youtube,omitempty"` + Bluesky string `protobuf:"bytes,4,opt,name=bluesky,proto3" json:"bluesky"` + Facebook string `protobuf:"bytes,5,opt,name=facebook,proto3" json:"facebook"` + Instagram string `protobuf:"bytes,6,opt,name=instagram,proto3" json:"instagram"` + Linkedin string `protobuf:"bytes,7,opt,name=linkedin,proto3" json:"linkedin"` + Pinterest string `protobuf:"bytes,8,opt,name=pinterest,proto3" json:"pinterest"` + Snapchat string `protobuf:"bytes,9,opt,name=snapchat,proto3" json:"snapchat"` + Threads string `protobuf:"bytes,10,opt,name=threads,proto3" json:"threads"` + Tiktok string `protobuf:"bytes,11,opt,name=tiktok,proto3" json:"tiktok"` + Twitter string `protobuf:"bytes,12,opt,name=twitter,proto3" json:"twitter"` + Youtube string `protobuf:"bytes,13,opt,name=youtube,proto3" json:"youtube"` } func (x *GetPostAnalyticsResponse) Reset() { @@ -9269,8 +9277,8 @@ type GetSocialAnalyticsRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Platforms []string `protobuf:"bytes,1,rep,name=platforms,proto3" json:"platforms,omitempty"` - ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Platforms []string `protobuf:"bytes,1,rep,name=platforms,proto3" json:"platforms"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` } func (x *GetSocialAnalyticsRequest) Reset() { @@ -9325,20 +9333,20 @@ type GetSocialAnalyticsResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` // 各平台的分析数据以 JSON 字符串形式存储 - Bluesky string `protobuf:"bytes,2,opt,name=bluesky,proto3" json:"bluesky,omitempty"` - Facebook string `protobuf:"bytes,3,opt,name=facebook,proto3" json:"facebook,omitempty"` - Gmb string `protobuf:"bytes,4,opt,name=gmb,proto3" json:"gmb,omitempty"` - Instagram string `protobuf:"bytes,5,opt,name=instagram,proto3" json:"instagram,omitempty"` - Linkedin string `protobuf:"bytes,6,opt,name=linkedin,proto3" json:"linkedin,omitempty"` - Pinterest string `protobuf:"bytes,7,opt,name=pinterest,proto3" json:"pinterest,omitempty"` - Reddit string `protobuf:"bytes,8,opt,name=reddit,proto3" json:"reddit,omitempty"` - Snapchat string `protobuf:"bytes,9,opt,name=snapchat,proto3" json:"snapchat,omitempty"` - Threads string `protobuf:"bytes,10,opt,name=threads,proto3" json:"threads,omitempty"` - Tiktok string `protobuf:"bytes,11,opt,name=tiktok,proto3" json:"tiktok,omitempty"` - Twitter string `protobuf:"bytes,12,opt,name=twitter,proto3" json:"twitter,omitempty"` - Youtube string `protobuf:"bytes,13,opt,name=youtube,proto3" json:"youtube,omitempty"` + Bluesky string `protobuf:"bytes,2,opt,name=bluesky,proto3" json:"bluesky"` + Facebook string `protobuf:"bytes,3,opt,name=facebook,proto3" json:"facebook"` + Gmb string `protobuf:"bytes,4,opt,name=gmb,proto3" json:"gmb"` + Instagram string `protobuf:"bytes,5,opt,name=instagram,proto3" json:"instagram"` + Linkedin string `protobuf:"bytes,6,opt,name=linkedin,proto3" json:"linkedin"` + Pinterest string `protobuf:"bytes,7,opt,name=pinterest,proto3" json:"pinterest"` + Reddit string `protobuf:"bytes,8,opt,name=reddit,proto3" json:"reddit"` + Snapchat string `protobuf:"bytes,9,opt,name=snapchat,proto3" json:"snapchat"` + Threads string `protobuf:"bytes,10,opt,name=threads,proto3" json:"threads"` + Tiktok string `protobuf:"bytes,11,opt,name=tiktok,proto3" json:"tiktok"` + Twitter string `protobuf:"bytes,12,opt,name=twitter,proto3" json:"twitter"` + Youtube string `protobuf:"bytes,13,opt,name=youtube,proto3" json:"youtube"` } func (x *GetSocialAnalyticsResponse) Reset() { @@ -9470,11 +9478,11 @@ type AutoHashtagsRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Post string `protobuf:"bytes,1,opt,name=post,proto3" json:"post,omitempty"` - Max int32 `protobuf:"varint,2,opt,name=max,proto3" json:"max,omitempty"` - Position string `protobuf:"bytes,3,opt,name=position,proto3" json:"position,omitempty"` - Language string `protobuf:"bytes,4,opt,name=language,proto3" json:"language,omitempty"` - ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Post string `protobuf:"bytes,1,opt,name=post,proto3" json:"post"` + Max int32 `protobuf:"varint,2,opt,name=max,proto3" json:"max"` + Position string `protobuf:"bytes,3,opt,name=position,proto3" json:"position"` + Language string `protobuf:"bytes,4,opt,name=language,proto3" json:"language"` + ProfileKey string `protobuf:"bytes,5,opt,name=profileKey,proto3" json:"profileKey"` } func (x *AutoHashtagsRequest) Reset() { @@ -9550,11 +9558,11 @@ type AutoHashtagsResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Post string `protobuf:"bytes,1,opt,name=post,proto3" json:"post,omitempty"` - Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action,omitempty"` - Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status,omitempty"` - Code int32 `protobuf:"varint,4,opt,name=code,proto3" json:"code,omitempty"` - Message string `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"` + Post string `protobuf:"bytes,1,opt,name=post,proto3" json:"post"` + Action string `protobuf:"bytes,2,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,3,opt,name=status,proto3" json:"status"` + Code int32 `protobuf:"varint,4,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,5,opt,name=message,proto3" json:"message"` } func (x *AutoHashtagsResponse) Reset() { @@ -9630,8 +9638,8 @@ type CheckBannedHashtagRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Hashtag string `protobuf:"bytes,1,opt,name=hashtag,proto3" json:"hashtag,omitempty"` - ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Hashtag string `protobuf:"bytes,1,opt,name=hashtag,proto3" json:"hashtag"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` } func (x *CheckBannedHashtagRequest) Reset() { @@ -9686,12 +9694,12 @@ type CheckBannedHashtagResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Hashtag string `protobuf:"bytes,1,opt,name=hashtag,proto3" json:"hashtag,omitempty"` - Banned bool `protobuf:"varint,2,opt,name=banned,proto3" json:"banned,omitempty"` - Action string `protobuf:"bytes,3,opt,name=action,proto3" json:"action,omitempty"` - Status string `protobuf:"bytes,4,opt,name=status,proto3" json:"status,omitempty"` - Code int32 `protobuf:"varint,5,opt,name=code,proto3" json:"code,omitempty"` - Message string `protobuf:"bytes,6,opt,name=message,proto3" json:"message,omitempty"` + Hashtag string `protobuf:"bytes,1,opt,name=hashtag,proto3" json:"hashtag"` + Banned bool `protobuf:"varint,2,opt,name=banned,proto3" json:"banned"` + Action string `protobuf:"bytes,3,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,4,opt,name=status,proto3" json:"status"` + Code int32 `protobuf:"varint,5,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,6,opt,name=message,proto3" json:"message"` } func (x *CheckBannedHashtagResponse) Reset() { @@ -9774,8 +9782,8 @@ type HashtagRecommendation struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ViewCount int64 `protobuf:"varint,1,opt,name=viewCount,proto3" json:"viewCount,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + ViewCount int64 `protobuf:"varint,1,opt,name=viewCount,proto3" json:"viewCount"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name"` } func (x *HashtagRecommendation) Reset() { @@ -9830,8 +9838,8 @@ type RecommendHashtagsRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Keyword string `protobuf:"bytes,1,opt,name=keyword,proto3" json:"keyword,omitempty"` - ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Keyword string `protobuf:"bytes,1,opt,name=keyword,proto3" json:"keyword"` + ProfileKey string `protobuf:"bytes,2,opt,name=profileKey,proto3" json:"profileKey"` } func (x *RecommendHashtagsRequest) Reset() { @@ -9886,12 +9894,12 @@ type RecommendHashtagsResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Keyword string `protobuf:"bytes,1,opt,name=keyword,proto3" json:"keyword,omitempty"` - Recommendations []*HashtagRecommendation `protobuf:"bytes,2,rep,name=recommendations,proto3" json:"recommendations,omitempty"` - Action string `protobuf:"bytes,3,opt,name=action,proto3" json:"action,omitempty"` - Status string `protobuf:"bytes,4,opt,name=status,proto3" json:"status,omitempty"` - Code int32 `protobuf:"varint,5,opt,name=code,proto3" json:"code,omitempty"` - Message string `protobuf:"bytes,6,opt,name=message,proto3" json:"message,omitempty"` + Keyword string `protobuf:"bytes,1,opt,name=keyword,proto3" json:"keyword"` + Recommendations []*HashtagRecommendation `protobuf:"bytes,2,rep,name=recommendations,proto3" json:"recommendations"` + Action string `protobuf:"bytes,3,opt,name=action,proto3" json:"action"` + Status string `protobuf:"bytes,4,opt,name=status,proto3" json:"status"` + Code int32 `protobuf:"varint,5,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,6,opt,name=message,proto3" json:"message"` } func (x *RecommendHashtagsResponse) Reset() { @@ -9974,9 +9982,9 @@ type SearchHashtagsRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Keyword string `protobuf:"bytes,1,opt,name=keyword,proto3" json:"keyword,omitempty"` - SearchType string `protobuf:"bytes,2,opt,name=searchType,proto3" json:"searchType,omitempty"` - ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey,omitempty"` + Keyword string `protobuf:"bytes,1,opt,name=keyword,proto3" json:"keyword"` + SearchType string `protobuf:"bytes,2,opt,name=searchType,proto3" json:"searchType"` + ProfileKey string `protobuf:"bytes,3,opt,name=profileKey,proto3" json:"profileKey"` } func (x *SearchHashtagsRequest) Reset() { @@ -10038,8 +10046,8 @@ type SearchHashtagInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name"` } func (x *SearchHashtagInfo) Reset() { @@ -10094,7 +10102,7 @@ type SearchHashtagChild struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id"` } func (x *SearchHashtagChild) Reset() { @@ -10142,7 +10150,7 @@ type SearchHashtagChildren struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Data []*SearchHashtagChild `protobuf:"bytes,1,rep,name=data,proto3" json:"data,omitempty"` + Data []*SearchHashtagChild `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` } func (x *SearchHashtagChildren) Reset() { @@ -10190,15 +10198,15 @@ type SearchHashtagMedia struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Caption string `protobuf:"bytes,1,opt,name=caption,proto3" json:"caption,omitempty"` - Children *SearchHashtagChildren `protobuf:"bytes,2,opt,name=children,proto3" json:"children,omitempty"` - CommentsCount int32 `protobuf:"varint,3,opt,name=commentsCount,proto3" json:"commentsCount,omitempty"` - Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id,omitempty"` - LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount,omitempty"` - MediaType string `protobuf:"bytes,6,opt,name=mediaType,proto3" json:"mediaType,omitempty"` - MediaUrl string `protobuf:"bytes,7,opt,name=mediaUrl,proto3" json:"mediaUrl,omitempty"` - Permalink string `protobuf:"bytes,8,opt,name=permalink,proto3" json:"permalink,omitempty"` - Timestamp string `protobuf:"bytes,9,opt,name=timestamp,proto3" json:"timestamp,omitempty"` + Caption string `protobuf:"bytes,1,opt,name=caption,proto3" json:"caption"` + Children *SearchHashtagChildren `protobuf:"bytes,2,opt,name=children,proto3" json:"children"` + CommentsCount int32 `protobuf:"varint,3,opt,name=commentsCount,proto3" json:"commentsCount"` + Id string `protobuf:"bytes,4,opt,name=id,proto3" json:"id"` + LikeCount int32 `protobuf:"varint,5,opt,name=likeCount,proto3" json:"likeCount"` + MediaType string `protobuf:"bytes,6,opt,name=mediaType,proto3" json:"mediaType"` + MediaUrl string `protobuf:"bytes,7,opt,name=mediaUrl,proto3" json:"mediaUrl"` + Permalink string `protobuf:"bytes,8,opt,name=permalink,proto3" json:"permalink"` + Timestamp string `protobuf:"bytes,9,opt,name=timestamp,proto3" json:"timestamp"` } func (x *SearchHashtagMedia) Reset() { @@ -10302,15 +10310,15 @@ type SearchHashtagsResponse struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"` - Hashtag *SearchHashtagInfo `protobuf:"bytes,2,opt,name=hashtag,proto3" json:"hashtag,omitempty"` - SearchResults []*SearchHashtagMedia `protobuf:"bytes,3,rep,name=searchResults,proto3" json:"searchResults,omitempty"` - Count int32 `protobuf:"varint,4,opt,name=count,proto3" json:"count,omitempty"` - LastUpdated string `protobuf:"bytes,5,opt,name=lastUpdated,proto3" json:"lastUpdated,omitempty"` - NextUpdate string `protobuf:"bytes,6,opt,name=nextUpdate,proto3" json:"nextUpdate,omitempty"` - Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action,omitempty"` - Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code,omitempty"` - Message string `protobuf:"bytes,9,opt,name=message,proto3" json:"message,omitempty"` + Status string `protobuf:"bytes,1,opt,name=status,proto3" json:"status"` + Hashtag *SearchHashtagInfo `protobuf:"bytes,2,opt,name=hashtag,proto3" json:"hashtag"` + SearchResults []*SearchHashtagMedia `protobuf:"bytes,3,rep,name=searchResults,proto3" json:"searchResults"` + Count int32 `protobuf:"varint,4,opt,name=count,proto3" json:"count"` + LastUpdated string `protobuf:"bytes,5,opt,name=lastUpdated,proto3" json:"lastUpdated"` + NextUpdate string `protobuf:"bytes,6,opt,name=nextUpdate,proto3" json:"nextUpdate"` + Action string `protobuf:"bytes,7,opt,name=action,proto3" json:"action"` + Code int32 `protobuf:"varint,8,opt,name=code,proto3" json:"code"` + Message string `protobuf:"bytes,9,opt,name=message,proto3" json:"message"` } func (x *SearchHashtagsResponse) Reset() { @@ -10475,755 +10483,710 @@ var file_pb_ayrshare_proto_rawDesc = []byte{ 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x4e, 0x61, 0x69, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x22, - 0xa4, 0x02, 0x0a, 0x0e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, + 0xe8, 0x03, 0x0a, 0x0e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, - 0x69, 0x76, 0x61, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x69, - 0x76, 0x61, 0x63, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x61, 0x74, 0x65, - 0x67, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, - 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x64, 0x65, - 0x46, 0x6f, 0x72, 0x4b, 0x69, 0x64, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6d, - 0x61, 0x64, 0x65, 0x46, 0x6f, 0x72, 0x4b, 0x69, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x68, - 0x75, 0x6d, 0x62, 0x4e, 0x61, 0x69, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, - 0x68, 0x75, 0x6d, 0x62, 0x4e, 0x61, 0x69, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6c, 0x61, 0x79, - 0x6c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x6c, - 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x6e, 0x6f, 0x74, 0x69, - 0x66, 0x79, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x11, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x53, 0x75, 0x62, 0x73, 0x63, - 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x22, 0xb4, 0x01, 0x0a, 0x0e, 0x42, 0x6c, 0x75, 0x65, 0x73, - 0x6b, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x61, 0x62, - 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, - 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x05, 0x6c, 0x61, 0x6e, 0x67, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x71, 0x75, 0x6f, 0x74, 0x65, - 0x64, 0x50, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, - 0x71, 0x75, 0x6f, 0x74, 0x65, 0x64, 0x50, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x69, 0x12, 0x26, 0x0a, - 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x50, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x69, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x50, 0x6f, - 0x73, 0x74, 0x55, 0x72, 0x69, 0x12, 0x26, 0x0a, 0x0e, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, - 0x50, 0x6f, 0x73, 0x74, 0x43, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, - 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x69, 0x64, 0x22, 0x8f, 0x05, - 0x0a, 0x0b, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, - 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe2, 0xdf, 0x1f, - 0x1a, 0x2a, 0x16, 0x70, 0x6f, 0x73, 0x74, 0xe5, 0x86, 0x85, 0xe5, 0xae, 0xb9, 0xe4, 0xb8, 0x8d, - 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x04, 0x70, 0x6f, 0x73, - 0x74, 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, - 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, - 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1c, 0x0a, 0x09, - 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, - 0x56, 0x69, 0x64, 0x65, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x56, - 0x69, 0x64, 0x65, 0x6f, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, - 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x63, 0x68, 0x65, - 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, - 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, - 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x68, - 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x64, 0x69, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x73, 0x12, 0x46, 0x0a, 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, - 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, - 0x72, 0x61, 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3d, 0x0a, 0x0d, - 0x74, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, - 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0d, 0x74, 0x69, - 0x6b, 0x54, 0x6f, 0x6b, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x40, 0x0a, 0x0e, 0x79, - 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x59, - 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0e, 0x79, - 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x40, 0x0a, - 0x0e, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, - 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, - 0x0e, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, - 0xa4, 0x02, 0x0a, 0x06, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x63, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x1a, - 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, - 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, - 0x77, 0x6e, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x12, 0x14, - 0x0a, 0x05, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, - 0x6e, 0x64, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x69, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x64, - 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x73, 0x65, - 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x22, 0xe0, 0x01, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x74, 0x49, - 0x74, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, - 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, - 0x6f, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x03, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, - 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, - 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, - 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, - 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, - 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x1a, 0x0a, - 0x08, 0x74, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x74, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x49, 0x64, 0x22, 0xc3, 0x01, 0x0a, 0x0c, 0x50, 0x6f, - 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x28, 0x0a, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, - 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, - 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, - 0x72, 0x6f, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, - 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, - 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, - 0x12, 0x1d, 0x0a, 0x0b, 0x69, 0x73, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x22, - 0x5e, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x2c, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1c, 0xe2, - 0xdf, 0x1f, 0x18, 0x2a, 0x14, 0xe5, 0xb8, 0x96, 0xe5, 0xad, 0x90, 0x49, 0x44, 0xe4, 0xb8, 0x8d, - 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, - 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, - 0xfd, 0x02, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x16, 0x0a, - 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, - 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, - 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, - 0x72, 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, - 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x2a, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, - 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, - 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, - 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, - 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, - 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, - 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x12, + 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x73, 0x69, + 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x69, + 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1e, 0x0a, 0x0a, + 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, + 0x6d, 0x61, 0x64, 0x65, 0x46, 0x6f, 0x72, 0x4b, 0x69, 0x64, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0b, 0x6d, 0x61, 0x64, 0x65, 0x46, 0x6f, 0x72, 0x4b, 0x69, 0x64, 0x73, 0x12, 0x1c, + 0x0a, 0x09, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x4e, 0x61, 0x69, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x4e, 0x61, 0x69, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, + 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x70, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x11, + 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, + 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x53, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x72, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, + 0x6f, 0x72, 0x74, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x73, 0x68, 0x6f, 0x72, + 0x74, 0x73, 0x12, 0x36, 0x0a, 0x16, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x53, 0x79, + 0x6e, 0x74, 0x68, 0x65, 0x74, 0x69, 0x63, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x18, 0x0a, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x16, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x73, 0x53, 0x79, 0x6e, 0x74, + 0x68, 0x65, 0x74, 0x69, 0x63, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x75, + 0x62, 0x6c, 0x69, 0x73, 0x68, 0x41, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x75, 0x62, 0x54, + 0x69, 0x74, 0x6c, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x73, + 0x75, 0x62, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x75, + 0x62, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x0d, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x75, 0x62, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x4c, 0x61, + 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x54, 0x69, 0x74, + 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x75, + 0x62, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x2a, 0x0a, 0x0e, 0x42, 0x6c, + 0x75, 0x65, 0x73, 0x6b, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x18, 0x0a, 0x07, + 0x61, 0x6c, 0x74, 0x54, 0x65, 0x78, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x61, + 0x6c, 0x74, 0x54, 0x65, 0x78, 0x74, 0x22, 0x8f, 0x05, 0x0a, 0x0b, 0x50, 0x6f, 0x73, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe2, 0xdf, 0x1f, 0x1a, 0x2a, 0x16, 0x70, 0x6f, 0x73, 0x74, + 0xe5, 0x86, 0x85, 0xe5, 0xae, 0xb9, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, + 0xa9, 0xba, 0x58, 0x01, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, + 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, + 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, + 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, + 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, + 0x72, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x12, 0x22, 0x0a, + 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, + 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, + 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x76, 0x61, + 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x53, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, - 0x6e, 0x6b, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, - 0x5c, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, - 0x79, 0x12, 0x2a, 0x0a, 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x6e, 0x73, - 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x5b, 0x0a, - 0x09, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x19, 0x0a, 0x07, 0x73, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x5f, 0x73, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x21, 0x0a, 0x0b, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x5f, 0x6e, 0x61, 0x6e, - 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x74, 0x63, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x74, 0x63, 0x22, 0x7a, 0x0a, 0x0c, 0x54, 0x77, - 0x69, 0x74, 0x74, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x6f, - 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, - 0x0a, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x4c, 0x69, 0x6d, - 0x69, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x52, 0x65, 0x73, - 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, - 0x79, 0x52, 0x65, 0x73, 0x65, 0x74, 0x22, 0xb5, 0x06, 0x0a, 0x0b, 0x44, 0x69, 0x73, 0x70, 0x6c, - 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, - 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x1c, - 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x70, 0x73, - 0x55, 0x72, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x73, 0x55, - 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x49, 0x64, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, - 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x55, 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x67, - 0x49, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x69, 0x67, 0x49, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, - 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, - 0x12, 0x32, 0x0a, 0x14, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x44, 0x61, 0x79, 0x73, 0x52, - 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, - 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x44, 0x61, 0x79, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, - 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, 0x0f, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x52, - 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, - 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x42, - 0x0a, 0x1c, 0x69, 0x73, 0x45, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x47, - 0x65, 0x6f, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x14, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x1c, 0x69, 0x73, 0x45, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, - 0x46, 0x6f, 0x72, 0x47, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, - 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, - 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x75, - 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3a, - 0x0a, 0x0c, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x18, 0x17, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, - 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0c, 0x74, 0x77, - 0x69, 0x74, 0x74, 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x76, 0x65, - 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x85, - 0x05, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, - 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x39, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, - 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x61, 0x72, - 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, - 0x6d, 0x65, 0x52, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x73, - 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x41, 0x70, - 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, - 0x74, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x4c, 0x0a, 0x21, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x21, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, - 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, - 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x61, 0x62, 0x6c, - 0x65, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, - 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, - 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x12, 0x2a, 0x0a, 0x10, - 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, - 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x6f, 0x6e, 0x74, - 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x10, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x51, - 0x75, 0x6f, 0x74, 0x61, 0x12, 0x32, 0x0a, 0x14, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, - 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x14, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, 0x43, 0x61, - 0x6c, 0x6c, 0x73, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, - 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x14, - 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, - 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0xb7, 0x02, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x2f, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, - 0xe2, 0xdf, 0x1f, 0x15, 0x2a, 0x11, 0x74, 0x69, 0x74, 0x6c, 0x65, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, - 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, - 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x68, 0x69, - 0x64, 0x65, 0x54, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x0d, 0x68, 0x69, 0x64, 0x65, 0x54, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, - 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x24, - 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x18, - 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6f, - 0x63, 0x69, 0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, - 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x1c, - 0x0a, 0x09, 0x73, 0x75, 0x62, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x73, 0x75, 0x62, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, - 0x74, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, - 0x22, 0xa5, 0x01, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x1e, - 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x28, - 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, - 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x22, 0xc7, 0x02, 0x0a, 0x12, 0x47, 0x65, 0x74, - 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x17, 0x68, - 0x61, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x68, 0x61, - 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x42, 0x0a, 0x1c, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, - 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x1c, 0x69, 0x6e, 0x63, - 0x6c, 0x75, 0x64, 0x65, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, - 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0d, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x42, 0x6f, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, - 0x48, 0x00, 0x52, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x42, 0x6f, 0x6f, - 0x6c, 0x12, 0x24, 0x0a, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x49, 0x6e, - 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, - 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, - 0x75, 0x72, 0x73, 0x6f, 0x72, 0x42, 0x0b, 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, - 0x6f, 0x67, 0x22, 0x96, 0x02, 0x0a, 0x0b, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x74, - 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, - 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, - 0x12, 0x22, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x74, 0x6c, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x54, - 0x69, 0x74, 0x6c, 0x65, 0x12, 0x2d, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, - 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x55, 0x54, - 0x43, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x55, 0x54, 0x43, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x14, 0x61, 0x63, 0x74, - 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, - 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, - 0x09, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x09, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x22, 0x5c, 0x0a, 0x0a, 0x50, - 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x61, 0x73, - 0x4d, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x61, 0x73, 0x4d, - 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, - 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, - 0x73, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x22, 0xd6, 0x01, 0x0a, 0x13, 0x47, 0x65, - 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x12, 0x31, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, - 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, - 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x0a, - 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x14, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x67, 0x69, - 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x22, 0x45, 0x0a, 0x05, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x74, - 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x73, - 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, - 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x22, 0xdb, 0x02, 0x0a, 0x12, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x76, - 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, - 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x3e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe2, 0xdf, - 0x1f, 0x1a, 0x2a, 0x16, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0xe4, 0xb8, - 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x0a, 0x70, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x6f, 0x67, 0x6f, - 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6c, 0x6f, 0x67, 0x6f, 0x75, 0x74, - 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x24, 0x0a, 0x0d, - 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x18, 0x06, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, 0x6f, 0x63, 0x69, - 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x06, 0x76, 0x65, 0x72, 0x69, 0x66, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x61, - 0x73, 0x65, 0x36, 0x34, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x62, 0x61, 0x73, 0x65, - 0x36, 0x34, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, - 0x12, 0x25, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, - 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x22, 0xa7, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x6e, 0x65, - 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, - 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, - 0x6b, 0x65, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, - 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x53, - 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, - 0x6e, 0x22, 0x87, 0x01, 0x0a, 0x0d, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x6f, 0x73, + 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, + 0x6e, 0x6b, 0x73, 0x12, 0x28, 0x0a, 0x0f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x64, 0x69, + 0x73, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x46, 0x0a, + 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4f, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x4f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3d, 0x0a, 0x0d, 0x74, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x4f, 0x70, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0d, 0x74, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x4f, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, + 0x65, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x4b, 0x65, 0x79, 0x12, 0x40, 0x0a, 0x0e, 0x79, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0e, 0x79, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x4f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x40, 0x0a, 0x0e, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, + 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, + 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0e, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, + 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0xa4, 0x02, 0x0a, 0x06, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, - 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, - 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x22, 0xfb, 0x04, 0x0a, 0x0b, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, - 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, - 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x31, 0x0a, - 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, - 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, - 0x79, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, - 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, - 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, - 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x37, 0x0a, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, - 0x44, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, - 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x08, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, - 0x72, 0x6f, 0x76, 0x65, 0x64, 0x42, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, - 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x42, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x70, 0x70, - 0x72, 0x6f, 0x76, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, - 0x0a, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x22, 0x0a, - 0x0c, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, - 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x41, 0x70, 0x70, - 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x72, 0x65, 0x71, - 0x75, 0x69, 0x72, 0x65, 0x73, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x12, 0x22, 0x0a, - 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, - 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, - 0x55, 0x72, 0x6c, 0x73, 0x18, 0x13, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, - 0x61, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, - 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x68, 0x6f, - 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x22, 0x8b, 0x02, 0x0a, 0x11, 0x47, 0x65, - 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1c, 0x0a, - 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, - 0x61, 0x73, 0x74, 0x44, 0x61, 0x79, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, - 0x61, 0x73, 0x74, 0x44, 0x61, 0x79, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, - 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, - 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x70, 0x6f, 0x73, - 0x74, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x6f, 0x52, - 0x65, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xb3, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, - 0x0a, 0x07, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x15, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x07, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, - 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6c, - 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, - 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x8d, 0x01, - 0x0a, 0x15, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, 0x64, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x1c, 0xe2, 0xdf, 0x1f, 0x18, 0x2a, 0x14, 0xe5, 0xb8, 0x96, 0xe5, 0xad, - 0x90, 0x49, 0x44, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, - 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x41, - 0x6c, 0x6c, 0x50, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, - 0x65, 0x61, 0x72, 0x63, 0x68, 0x41, 0x6c, 0x6c, 0x50, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x1e, 0x0a, - 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x90, 0x03, - 0x0a, 0x16, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, 0x64, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x65, 0x72, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x69, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, - 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, - 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x04, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x48, - 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, - 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, - 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x1c, 0x0a, - 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x37, 0x0a, 0x0c, 0x73, - 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, - 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x22, - 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x0a, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, - 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, - 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, - 0x22, 0x84, 0x01, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x50, 0x6f, 0x73, - 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x22, 0x7b, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x48, 0x69, - 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x20, 0xe2, 0xdf, 0x1f, 0x1c, 0x2a, 0x18, - 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x90, 0x8d, 0xe7, 0xa7, 0xb0, 0xe4, 0xb8, 0x8d, 0xe8, - 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, - 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x4b, 0x65, 0x79, 0x22, 0xa6, 0x01, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, - 0x6f, 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2c, 0x0a, - 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, - 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x50, 0x6f, 0x73, 0x74, 0x52, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6c, - 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, - 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0xe7, 0x01, - 0x0a, 0x12, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1a, 0xe2, 0xdf, 0x1f, 0x16, 0x2a, 0x12, 0xe5, 0xb9, - 0xb3, 0xe5, 0x8f, 0xb0, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, - 0x58, 0x01, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x41, 0x0a, 0x0b, - 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x42, 0x1f, 0xe2, 0xdf, 0x1f, 0x1b, 0x2a, 0x17, 0xe6, 0x8e, 0xa5, 0xe6, 0x94, 0xb6, 0xe8, - 0x80, 0x85, 0x49, 0x44, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, - 0x58, 0x01, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, - 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xdb, 0x01, 0x0a, 0x0b, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, - 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, - 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x96, 0x02, 0x0a, 0x13, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x69, - 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, - 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, - 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x12, - 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x31, 0x0a, 0x08, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0xda, - 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1a, 0xe2, 0xdf, 0x1f, 0x16, 0x2a, 0x12, 0xe5, - 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, - 0xba, 0x58, 0x01, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, - 0x11, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x6e, - 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, - 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x70, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x39, 0x0a, 0x11, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, - 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x74, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0x78, 0x0a, 0x14, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x22, 0x0a, 0x0c, - 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, - 0x22, 0x57, 0x0a, 0x17, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, - 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, - 0x18, 0x0a, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x22, 0x3f, 0x0a, 0x0f, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, - 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x22, 0x96, 0x04, 0x0a, 0x0f, 0x47, - 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, - 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x0d, 0x73, 0x65, - 0x6e, 0x64, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x52, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, - 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x4d, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x61, - 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, - 0x10, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, - 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x0b, 0x61, - 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x41, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x61, - 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x37, 0x0a, 0x09, 0x72, 0x65, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x22, 0x57, 0x0a, 0x17, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x22, 0x9f, 0x01, 0x0a, - 0x12, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x43, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, - 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, - 0x61, 0x72, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x0b, 0x70, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x61, 0x74, 0x65, 0x72, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x09, 0x77, 0x61, 0x74, 0x65, 0x72, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xe7, - 0x02, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x35, - 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, - 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, - 0x73, 0x12, 0x50, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, - 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x14, 0x63, - 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, - 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, - 0x17, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x4d, 0x73, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xa8, 0x02, 0x0a, 0x12, 0x50, 0x6f, 0x73, - 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x26, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x16, 0xe2, 0xdf, 0x1f, - 0x12, 0x2a, 0x0e, 0x69, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, - 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x35, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe2, 0xdf, 0x1f, 0x17, 0x2a, 0x13, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, - 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x49, - 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, - 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, - 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x61, - 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, - 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, - 0x72, 0x6c, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, - 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, - 0x4b, 0x65, 0x79, 0x22, 0x86, 0x01, 0x0a, 0x18, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, - 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x9d, 0x01, 0x0a, - 0x15, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, - 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x22, 0xb0, 0x01, 0x0a, - 0x16, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, - 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x10, 0x0a, - 0x03, 0x63, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x22, - 0x85, 0x01, 0x0a, 0x17, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xa5, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x6e, 0x6b, - 0x65, 0x64, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x63, + 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x18, 0x0a, + 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x18, 0x0a, + 0x07, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6e, 0x64, 0x65, 0x64, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x12, 0x18, 0x0a, + 0x07, 0x69, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x69, 0x64, 0x53, 0x68, 0x61, 0x72, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, + 0x65, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x56, 0x69, 0x64, 0x65, + 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x75, 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x22, + 0xe0, 0x01, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x07, + 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, + 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x22, + 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, + 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x74, 0x69, 0x6b, 0x54, 0x6f, 0x6b, + 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69, 0x6b, 0x54, 0x6f, 0x6b, + 0x49, 0x64, 0x22, 0xc3, 0x01, 0x0a, 0x0c, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, - 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x55, 0x72, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, - 0x82, 0x01, 0x0a, 0x16, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, - 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, - 0x74, 0x55, 0x72, 0x6c, 0x22, 0x84, 0x01, 0x0a, 0x16, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x28, 0x0a, 0x05, 0x70, + 0x6f, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, + 0x70, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, + 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x2a, 0x0a, + 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, + 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0b, 0x69, 0x73, 0x56, + 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x22, 0x5e, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x50, + 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1c, 0xe2, 0xdf, 0x1f, 0x18, 0x2a, 0x14, 0xe5, 0xb8, + 0x96, 0xe5, 0xad, 0x90, 0x49, 0x44, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, + 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xfd, 0x02, 0x0a, 0x0f, 0x47, 0x65, 0x74, + 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, + 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, + 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, + 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x2a, + 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x10, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x49, + 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, + 0x65, 0x66, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, + 0x44, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x63, 0x68, 0x65, + 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x72, + 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, + 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x5c, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x55, + 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x2a, 0x0a, 0x10, 0x69, 0x6e, + 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x22, 0x5b, 0x0a, 0x09, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x12, 0x19, 0x0a, 0x07, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x21, + 0x0a, 0x0b, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0c, 0x5f, 0x6e, 0x61, 0x6e, 0x6f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x73, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x74, 0x63, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x75, 0x74, 0x63, 0x22, 0x7a, 0x0a, 0x0c, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x55, 0x73, + 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x55, 0x73, + 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, + 0x6c, 0x79, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, + 0x6c, 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x6d, + 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x6d, + 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x65, 0x74, 0x22, + 0xb5, 0x06, 0x0a, 0x0b, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, + 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x49, + 0x6d, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, + 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, + 0x72, 0x49, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x61, 0x70, 0x73, 0x55, 0x72, 0x6c, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x6d, 0x61, 0x70, 0x73, 0x55, 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x70, + 0x6c, 0x61, 0x63, 0x65, 0x49, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6c, + 0x61, 0x63, 0x65, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x55, + 0x72, 0x6c, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, + 0x55, 0x72, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x67, 0x49, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x69, 0x67, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x75, + 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x75, 0x73, 0x65, 0x64, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x32, 0x0a, 0x14, 0x72, 0x65, 0x66, + 0x72, 0x65, 0x73, 0x68, 0x44, 0x61, 0x79, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, + 0x67, 0x18, 0x12, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, + 0x44, 0x61, 0x79, 0x73, 0x52, 0x65, 0x6d, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x28, 0x0a, + 0x0f, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, + 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x52, + 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x12, 0x42, 0x0a, 0x1c, 0x69, 0x73, 0x45, 0x6c, 0x69, + 0x67, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x47, 0x65, 0x6f, 0x52, 0x65, 0x73, 0x74, 0x72, + 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1c, 0x69, + 0x73, 0x45, 0x6c, 0x69, 0x67, 0x69, 0x62, 0x6c, 0x65, 0x46, 0x6f, 0x72, 0x47, 0x65, 0x6f, 0x52, + 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x69, + 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0a, 0x69, 0x73, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x73, + 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x16, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3a, 0x0a, 0x0c, 0x74, 0x77, 0x69, 0x74, 0x74, + 0x65, 0x72, 0x55, 0x73, 0x61, 0x67, 0x65, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, + 0x55, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0c, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x55, 0x73, + 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x76, 0x65, 0x72, 0x69, 0x66, 0x69, 0x65, 0x64, 0x54, + 0x79, 0x70, 0x65, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x76, 0x65, 0x72, 0x69, 0x66, + 0x69, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x22, 0x85, 0x05, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x55, + 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x61, + 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, + 0x2d, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x39, + 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x52, 0x0c, 0x64, 0x69, 0x73, + 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, + 0x69, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, + 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, + 0x6c, 0x12, 0x4c, 0x0a, 0x21, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, + 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, + 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x21, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x2a, 0x0a, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x61, 0x62, + 0x6c, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x69, 0x6e, 0x67, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x6d, + 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, + 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, + 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x10, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, + 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x10, 0x6d, 0x6f, 0x6e, + 0x74, 0x68, 0x6c, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x12, 0x32, 0x0a, + 0x14, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x73, + 0x51, 0x75, 0x6f, 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x6d, 0x6f, 0x6e, + 0x74, 0x68, 0x6c, 0x79, 0x41, 0x70, 0x69, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x51, 0x75, 0x6f, 0x74, + 0x61, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, + 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, + 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, + 0xb7, 0x02, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x19, 0xe2, 0xdf, 0x1f, 0x15, 0x2a, 0x11, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, + 0x58, 0x01, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, + 0x69, 0x76, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x68, 0x69, 0x64, 0x65, 0x54, 0x6f, 0x70, 0x48, 0x65, + 0x61, 0x64, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x68, 0x69, 0x64, 0x65, + 0x54, 0x6f, 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x6f, 0x70, + 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x6f, + 0x70, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x24, 0x0a, 0x0d, 0x64, 0x69, 0x73, 0x61, 0x62, + 0x6c, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, + 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x12, 0x12, 0x0a, + 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x74, 0x65, 0x61, + 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x48, 0x65, + 0x61, 0x64, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x75, 0x62, 0x48, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x61, 0x67, 0x73, 0x18, 0x09, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73, 0x22, 0xa5, 0x01, 0x0a, 0x15, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, + 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x28, 0x0a, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x22, 0xc7, 0x02, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, + 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, + 0x65, 0x66, 0x49, 0x64, 0x12, 0x38, 0x0a, 0x17, 0x68, 0x61, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, + 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x68, 0x61, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x42, + 0x0a, 0x1c, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, + 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x1c, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x73, 0x41, 0x63, + 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0d, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x42, + 0x6f, 0x6f, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0d, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x42, 0x6f, 0x6f, 0x6c, 0x12, 0x24, 0x0a, 0x0c, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, + 0x48, 0x00, 0x52, 0x0c, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x49, 0x6e, 0x74, + 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x42, 0x0b, + 0x0a, 0x09, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x6f, 0x67, 0x22, 0x96, 0x02, 0x0a, 0x0b, + 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x64, 0x69, 0x73, + 0x70, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x2d, 0x0a, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x55, 0x54, 0x43, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x55, 0x54, 0x43, 0x12, 0x14, 0x0a, 0x05, + 0x72, 0x65, 0x66, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, + 0x49, 0x64, 0x12, 0x32, 0x0a, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, + 0x61, 0x6c, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x14, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x63, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, + 0x64, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x75, 0x73, 0x70, 0x65, + 0x6e, 0x64, 0x65, 0x64, 0x22, 0x5c, 0x0a, 0x0a, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, + 0x6f, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x61, 0x73, 0x4d, 0x6f, 0x72, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x61, 0x73, 0x4d, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, + 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x43, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x12, 0x14, 0x0a, 0x05, + 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6d, + 0x69, 0x74, 0x22, 0xd6, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x08, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, + 0x74, 0x65, 0x6d, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x14, 0x0a, + 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x34, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x0a, 0x70, 0x61, 0x67, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x45, 0x0a, 0x05, 0x45, + 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x02, 0x74, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x75, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, + 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x62, 0x6f, + 0x64, 0x79, 0x22, 0xdb, 0x02, 0x0a, 0x12, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, + 0x57, 0x54, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x6f, 0x6d, + 0x61, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x6f, 0x6d, 0x61, 0x69, + 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x4b, 0x65, + 0x79, 0x12, 0x3e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe2, 0xdf, 0x1f, 0x1a, 0x2a, 0x16, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, + 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x06, 0x6c, 0x6f, 0x67, 0x6f, 0x75, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x64, + 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x64, + 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, + 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x6c, + 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x76, + 0x65, 0x72, 0x69, 0x66, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x76, 0x65, 0x72, + 0x69, 0x66, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x06, 0x62, 0x61, 0x73, 0x65, 0x36, 0x34, 0x12, 0x1c, 0x0a, 0x09, 0x65, + 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, + 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x12, 0x25, 0x0a, 0x05, 0x65, 0x6d, 0x61, + 0x69, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x45, 0x6d, 0x61, 0x69, 0x6c, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, + 0x22, 0xa7, 0x01, 0x0a, 0x13, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x10, 0x0a, 0x03, + 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x1c, + 0x0a, 0x09, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x09, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x53, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, + 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x65, 0x78, 0x70, 0x69, 0x72, 0x65, 0x73, 0x49, 0x6e, 0x22, 0x87, 0x01, 0x0a, 0x0d, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, + 0x56, 0x69, 0x64, 0x65, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x56, + 0x69, 0x64, 0x65, 0x6f, 0x22, 0xfb, 0x04, 0x0a, 0x0b, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, + 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x31, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, + 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x50, 0x6f, 0x73, 0x74, 0x49, 0x64, + 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x72, 0x72, + 0x6f, 0x72, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, + 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x37, 0x0a, + 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, + 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x42, 0x79, + 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, + 0x42, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x65, 0x64, 0x44, 0x61, + 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x70, 0x70, 0x72, 0x6f, 0x76, + 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, + 0x65, 0x64, 0x42, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x6a, 0x65, + 0x63, 0x74, 0x65, 0x64, 0x42, 0x79, 0x12, 0x22, 0x0a, 0x0c, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, + 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x72, 0x65, + 0x6a, 0x65, 0x63, 0x74, 0x65, 0x64, 0x44, 0x61, 0x74, 0x65, 0x12, 0x2a, 0x0a, 0x10, 0x72, 0x65, + 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x41, 0x70, 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x18, 0x10, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x73, 0x41, 0x70, + 0x70, 0x72, 0x6f, 0x76, 0x61, 0x6c, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, + 0x66, 0x49, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, + 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x18, 0x13, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x22, + 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x14, + 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, + 0x6b, 0x73, 0x22, 0x8b, 0x02, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61, 0x72, + 0x74, 0x44, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x61, + 0x72, 0x74, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x44, 0x61, 0x74, 0x65, + 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x44, 0x61, 0x79, 0x73, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x6c, 0x61, 0x73, 0x74, 0x44, 0x61, 0x79, 0x73, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0c, + 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, + 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, + 0x22, 0xb3, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2f, 0x0a, 0x07, 0x68, 0x69, 0x73, 0x74, 0x6f, + 0x72, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x52, + 0x07, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x66, 0x49, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x66, 0x49, 0x64, 0x12, 0x14, + 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x8d, 0x01, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x48, 0x69, + 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x2c, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1c, 0xe2, 0xdf, + 0x1f, 0x18, 0x2a, 0x14, 0xe5, 0xb8, 0x96, 0xe5, 0xad, 0x90, 0x49, 0x44, 0xe4, 0xb8, 0x8d, 0xe8, + 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x26, + 0x0a, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x41, 0x6c, 0x6c, 0x50, 0x6f, 0x73, 0x74, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x41, 0x6c, + 0x6c, 0x50, 0x6f, 0x73, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x90, 0x03, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x48, 0x69, + 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x74, 0x69, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, + 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x07, 0x70, + 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x50, + 0x6f, 0x73, 0x74, 0x49, 0x64, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x73, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, + 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, + 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x37, 0x0a, 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, + 0x44, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, + 0x0c, 0x73, 0x63, 0x68, 0x65, 0x64, 0x75, 0x6c, 0x65, 0x44, 0x61, 0x74, 0x65, 0x12, 0x18, 0x0a, + 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x72, 0x74, + 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x73, + 0x68, 0x6f, 0x72, 0x74, 0x65, 0x6e, 0x4c, 0x69, 0x6e, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, + 0x6f, 0x73, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, + 0x14, 0x0a, 0x05, 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x6e, 0x6f, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x0d, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x84, 0x01, 0x0a, 0x0c, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, + 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x18, + 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, + 0x22, 0x7b, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, + 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x3c, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x20, 0xe2, 0xdf, 0x1f, 0x1c, 0x2a, 0x18, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, + 0x90, 0x8d, 0xe7, 0xa7, 0xb0, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, + 0xba, 0x58, 0x01, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1e, 0x0a, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xa6, 0x01, + 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2c, 0x0a, 0x05, 0x70, 0x6f, 0x73, 0x74, 0x73, 0x18, + 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x05, 0x70, + 0x6f, 0x73, 0x74, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0xe7, 0x01, 0x0a, 0x12, 0x53, 0x65, 0x6e, 0x64, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, + 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, + 0x1a, 0xe2, 0xdf, 0x1f, 0x16, 0x2a, 0x12, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe4, 0xb8, 0x8d, + 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x08, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x41, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1f, 0xe2, 0xdf, 0x1f, 0x1b, + 0x2a, 0x17, 0xe6, 0x8e, 0xa5, 0xe6, 0x94, 0xb6, 0xe8, 0x80, 0x85, 0x49, 0x44, 0xe4, 0xb8, 0x8d, + 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x0b, 0x72, 0x65, 0x63, + 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, + 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, + 0x22, 0xdb, 0x01, 0x0a, 0x0b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x74, 0x65, 0x6d, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x69, + 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, + 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, + 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, + 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, + 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x22, 0x96, + 0x02, 0x0a, 0x13, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, + 0x0a, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x64, 0x12, 0x18, + 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, + 0x63, 0x6f, 0x64, 0x65, 0x12, 0x31, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, + 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x6d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0xda, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, + 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x42, 0x1a, 0xe2, 0xdf, 0x1f, 0x16, 0x2a, 0x12, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe4, 0xb8, + 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x08, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x26, + 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x11, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, + 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x4f, 0x6e, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x4f, 0x6e, 0x6c, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, + 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x4b, 0x65, 0x79, 0x22, 0x39, 0x0a, 0x11, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, + 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, + 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, + 0x78, 0x0a, 0x14, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64, 0x65, 0x72, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, + 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x69, + 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x22, 0x57, 0x0a, 0x17, 0x4d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x69, 0x63, 0x74, + 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x69, 0x63, 0x74, 0x75, + 0x72, 0x65, 0x22, 0x3f, 0x0a, 0x0f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x14, 0x0a, + 0x05, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, + 0x6f, 0x6a, 0x69, 0x22, 0x96, 0x04, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x65, + 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x0d, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x44, 0x65, 0x74, + 0x61, 0x69, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, + 0x64, 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x0d, 0x73, 0x65, 0x6e, 0x64, + 0x65, 0x72, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x63, + 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x4d, 0x0a, 0x10, 0x72, + 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x63, 0x69, 0x70, 0x69, 0x65, 0x6e, + 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x52, 0x10, 0x72, 0x65, 0x63, 0x69, 0x70, 0x69, + 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x63, 0x6f, + 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x75, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x74, 0x74, 0x61, + 0x63, 0x68, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x61, 0x74, 0x74, 0x61, 0x63, 0x68, 0x6d, 0x65, + 0x6e, 0x74, 0x73, 0x12, 0x37, 0x0a, 0x09, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, + 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x52, 0x09, 0x72, 0x65, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x57, 0x0a, 0x17, + 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, + 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x69, + 0x63, 0x74, 0x75, 0x72, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x12, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, + 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x43, 0x0a, 0x0b, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x6f, 0x6e, + 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, + 0x70, 0x61, 0x6e, 0x74, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, + 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x77, 0x61, 0x74, + 0x65, 0x72, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x77, 0x61, + 0x74, 0x65, 0x72, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0xe7, 0x02, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x4d, + 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x35, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, + 0x49, 0x74, 0x65, 0x6d, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x20, + 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, + 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x12, 0x28, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x49, 0x64, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, + 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x12, 0x50, 0x0a, 0x14, 0x63, 0x6f, + 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x73, 0x12, 0x16, 0x0a, 0x06, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x17, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x4d, + 0x73, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x22, 0xa8, 0x02, 0x0a, 0x12, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x16, 0xe2, 0xdf, 0x1f, 0x12, 0x2a, 0x0e, 0x69, 0x64, 0xe4, 0xb8, + 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x35, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x1b, 0xe2, 0xdf, 0x1f, 0x17, 0x2a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x07, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, + 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, + 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, + 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x65, + 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x12, 0x1c, + 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x73, 0x12, 0x1e, 0x0a, 0x0a, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x86, 0x01, 0x0a, + 0x18, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x9d, 0x01, 0x0a, 0x15, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, @@ -11231,548 +11194,584 @@ var file_pb_ayrshare_proto_rawDesc = []byte{ 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xc5, 0x01, 0x0a, 0x0d, - 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x16, 0x0a, - 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, - 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x22, 0xbc, 0x05, 0x0a, 0x13, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x44, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, - 0x44, 0x12, 0x1f, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x41, 0x6c, - 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x40, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, - 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, - 0x67, 0x72, 0x61, 0x6d, 0x12, 0x37, 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, - 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x16, 0x0a, - 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, - 0x2f, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, - 0x12, 0x3a, 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x75, - 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x3d, 0x0a, 0x08, - 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, - 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, - 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x3d, 0x0a, 0x08, 0x6c, - 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, - 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x3a, 0x0a, 0x07, 0x74, 0x77, - 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x61, 0x72, - 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x43, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x74, - 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x3a, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, - 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x2e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, - 0x62, 0x65, 0x22, 0x5b, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x42, 0x16, 0xe2, 0xdf, 0x1f, 0x12, 0x2a, 0x0e, 0x69, 0x64, 0xe4, 0xb8, 0x8d, - 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, - 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, - 0x4f, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x55, 0x73, 0x65, 0x72, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x22, 0x23, 0x0a, 0x11, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x55, 0x73, 0x65, - 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xc9, 0x03, 0x0a, 0x10, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, - 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x76, + 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x69, + 0x64, 0x65, 0x6f, 0x49, 0x64, 0x22, 0xb0, 0x01, 0x0a, 0x16, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, + 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, + 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x22, 0x85, 0x01, 0x0a, 0x17, 0x46, 0x61, 0x63, + 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x22, 0xa5, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x04, - 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x55, - 0x73, 0x65, 0x72, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x69, 0x64, - 0x64, 0x65, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x68, 0x69, 0x64, 0x64, 0x65, - 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, - 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, - 0x34, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x72, 0x65, - 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, - 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, - 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, - 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x41, 0x6c, - 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, - 0x65, 0x22, 0xc4, 0x04, 0x0a, 0x0d, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, - 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, - 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, - 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x64, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x64, 0x12, 0x14, 0x0a, - 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, - 0x6b, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, - 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x06, 0x70, 0x69, 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, - 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, - 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, - 0x31, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6b, 0x54, - 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, - 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0f, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, - 0x65, 0x72, 0x49, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x73, 0x69, - 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x69, - 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x22, 0xb4, 0x03, 0x0a, 0x0e, 0x42, 0x6c, 0x75, - 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, - 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, - 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, - 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, - 0x55, 0x72, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x09, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, - 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, - 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x70, - 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, - 0x54, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, - 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x74, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, - 0x32, 0x0a, 0x0c, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x12, - 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x22, 0x88, 0x01, 0x0a, 0x0e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, - 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, - 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, - 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x0e, - 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xac, - 0x03, 0x0a, 0x0f, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, - 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x18, - 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x07, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, - 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x1c, - 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x06, - 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, - 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, - 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1a, - 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, - 0x65, 0x72, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x75, - 0x73, 0x65, 0x72, 0x4c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x33, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, - 0x69, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x22, 0x35, 0x0a, - 0x0d, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x12, 0x12, - 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x75, 0x72, 0x6c, 0x22, 0x66, 0x0a, 0x0c, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, - 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xbe, 0x03, 0x0a, - 0x0f, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, - 0x65, 0x64, 0x49, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x1c, - 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2d, 0x0a, 0x05, - 0x6d, 0x65, 0x64, 0x69, 0x61, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, - 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x4d, - 0x65, 0x64, 0x69, 0x61, 0x52, 0x05, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, - 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, - 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x10, 0x6f, 0x72, 0x67, 0x61, 0x6e, - 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x10, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x77, 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x77, 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x22, 0x30, 0x0a, - 0x0a, 0x52, 0x65, 0x64, 0x64, 0x69, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, - 0xfd, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x64, 0x64, 0x69, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, + 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6e, 0x12, 0x1a, 0x0a, 0x08, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0x82, 0x01, 0x0a, 0x16, 0x54, 0x77, 0x69, + 0x74, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x14, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x64, - 0x64, 0x69, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x1e, 0x0a, - 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x1c, 0x0a, - 0x09, 0x73, 0x75, 0x62, 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x73, 0x75, 0x62, 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, - 0x70, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x75, 0x70, 0x73, 0x12, 0x20, 0x0a, - 0x0b, 0x69, 0x73, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x22, - 0x8c, 0x04, 0x0a, 0x0e, 0x54, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x69, - 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x70, - 0x6c, 0x69, 0x65, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x50, - 0x6f, 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x51, 0x75, 0x6f, - 0x74, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73, 0x52, 0x65, 0x70, 0x6c, - 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x79, - 0x12, 0x2a, 0x0a, 0x10, 0x69, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x4f, 0x77, 0x6e, 0x65, 0x64, - 0x42, 0x79, 0x4d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x52, 0x65, - 0x70, 0x6c, 0x79, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x42, 0x79, 0x4d, 0x65, 0x12, 0x1c, 0x0a, 0x09, - 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, - 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, - 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, - 0x72, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x07, 0x72, 0x65, - 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, - 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x43, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x24, - 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x18, - 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x41, 0x75, 0x64, 0x69, - 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x63, 0x6f, 0x64, - 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x63, 0x6f, - 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x10, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xe6, - 0x01, 0x0a, 0x14, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, - 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, - 0x77, 0x65, 0x72, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0e, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, - 0x6e, 0x67, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x77, 0x65, 0x65, 0x74, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x77, 0x65, - 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, - 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x6c, 0x69, - 0x73, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, - 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, - 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x65, 0x64, - 0x69, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x22, 0x3c, 0x0a, 0x16, 0x54, 0x77, 0x69, 0x74, 0x74, - 0x65, 0x72, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x54, 0x77, 0x65, 0x65, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xae, 0x02, 0x0a, 0x0e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, - 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, - 0x72, 0x6c, 0x12, 0x44, 0x0a, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, - 0x69, 0x63, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, - 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, - 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, - 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, - 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa4, 0x05, 0x0a, 0x0e, 0x54, 0x77, 0x69, 0x74, 0x74, - 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x62, 0x6f, 0x6f, - 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x0d, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x69, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x69, 0x6d, - 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, - 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, - 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, - 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x44, 0x0a, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, - 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x61, - 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x50, - 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x0d, 0x70, 0x75, - 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x71, - 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4c, 0x0a, 0x10, 0x72, - 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x54, 0x77, 0x65, 0x65, 0x74, 0x73, 0x18, - 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, - 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, - 0x65, 0x64, 0x54, 0x77, 0x65, 0x65, 0x74, 0x52, 0x10, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, - 0x63, 0x65, 0x64, 0x54, 0x77, 0x65, 0x65, 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x70, - 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, - 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x07, 0x72, 0x65, 0x70, - 0x6c, 0x79, 0x54, 0x6f, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x70, - 0x6c, 0x79, 0x54, 0x6f, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x12, 0x22, 0x0a, - 0x0c, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x0c, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x12, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x9c, 0x02, - 0x0a, 0x0c, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x1e, - 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x72, 0x6c, 0x12, 0x18, - 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, - 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, - 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x07, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, - 0x65, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xd0, 0x02, 0x0a, - 0x0e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, - 0x1e, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x72, 0x6c, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x72, 0x6c, 0x12, - 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x1c, 0x0a, - 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, - 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, - 0x6c, 0x12, 0x30, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x59, 0x6f, - 0x75, 0x54, 0x75, 0x62, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, - 0x69, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, - 0x9e, 0x05, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x38, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, - 0x72, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, - 0x12, 0x2f, 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6b, 0x54, - 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, - 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, - 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, - 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x12, 0x32, 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, 0x0a, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x42, 0x6c, - 0x75, 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x62, 0x6c, - 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x35, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, - 0x6b, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x35, 0x0a, 0x08, - 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, - 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, - 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, - 0x64, 0x69, 0x6e, 0x12, 0x2f, 0x0a, 0x06, 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x18, 0x0d, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, - 0x65, 0x64, 0x64, 0x69, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x72, 0x65, - 0x64, 0x64, 0x69, 0x74, 0x12, 0x32, 0x0a, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, - 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, - 0x2e, 0x54, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, - 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x12, 0x32, 0x0a, 0x07, 0x74, 0x77, 0x69, 0x74, - 0x74, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x07, - 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, - 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, - 0x22, 0xc4, 0x01, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x16, 0xe2, 0xdf, 0x1f, 0x12, 0x2a, 0x0e, 0x69, 0x64, 0xe4, - 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, - 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x2a, 0x0a, 0x10, 0x73, - 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x73, 0x0a, 0x17, 0x49, 0x6e, 0x73, 0x74, 0x61, - 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x8e, 0x01, 0x0a, - 0x14, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xcb, 0x02, - 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, - 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x16, 0x0a, - 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, - 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, - 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, - 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x6c, - 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, - 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, - 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x18, 0x0a, - 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, - 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, - 0x72, 0x12, 0x18, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x0c, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, 0xdf, 0x01, 0x0a, 0x13, - 0x52, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, - 0x16, 0xe2, 0xdf, 0x1f, 0x12, 0x2a, 0x0e, 0x69, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, - 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x35, 0x0a, 0x07, 0x63, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe2, 0xdf, - 0x1f, 0x17, 0x2a, 0x13, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, - 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, - 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, - 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, - 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1e, 0x0a, - 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xae, 0x01, - 0x0a, 0x16, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x70, 0x6c, 0x79, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x22, 0x84, 0x01, + 0x0a, 0x16, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, - 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xc5, - 0x01, 0x0a, 0x13, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, + 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xc5, 0x01, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, + 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, + 0x70, 0x6f, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xbc, 0x05, 0x0a, + 0x13, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x44, 0x12, 0x1f, 0x0a, 0x0c, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x41, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x40, 0x0a, 0x09, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, + 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x37, 0x0a, + 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, + 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, + 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, + 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x2f, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, + 0x72, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x45, 0x72, 0x72, 0x6f, + 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x3a, 0x0a, 0x07, 0x62, 0x6c, 0x75, + 0x65, 0x73, 0x6b, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x62, 0x6c, + 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x3d, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, + 0x6b, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, + 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x3d, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, + 0x64, 0x69, 0x6e, 0x12, 0x3a, 0x0a, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0f, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, + 0x3a, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x59, 0x6f, 0x75, 0x54, + 0x75, 0x62, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, 0x5b, 0x0a, 0x11, 0x47, + 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x26, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x16, 0xe2, 0xdf, + 0x1f, 0x12, 0x2a, 0x0e, 0x69, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, + 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x4f, 0x0a, 0x0d, 0x49, 0x6e, 0x73, 0x74, + 0x61, 0x67, 0x72, 0x61, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, + 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x23, 0x0a, 0x11, 0x49, 0x6e, 0x73, + 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xc9, + 0x03, 0x0a, 0x10, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, + 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x2b, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, + 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x66, 0x72, + 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x06, 0x68, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, + 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, + 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x72, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x70, 0x6f, 0x73, 0x74, 0x49, 0x64, 0x12, 0x34, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, + 0x69, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x2f, + 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x55, 0x73, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, + 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0b, 0x75, + 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x41, 0x6c, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xc4, 0x04, 0x0a, 0x0d, 0x54, + 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, + 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, + 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x69, 0x6b, 0x65, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6f, 0x77, + 0x6e, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, + 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, + 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x69, + 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x70, 0x69, 0x6e, 0x6e, + 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, + 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, + 0x6c, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x31, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, + 0x69, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x75, + 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, + 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, + 0x49, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, + 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, + 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x76, 0x69, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, + 0x79, 0x22, 0xb4, 0x03, 0x0a, 0x0e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, - 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, - 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x22, 0xd8, 0x01, 0x0a, 0x14, 0x42, 0x6c, 0x75, 0x65, 0x73, - 0x6b, 0x79, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, + 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, + 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, + 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, + 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, + 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x07, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, + 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, + 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x12, 0x20, 0x0a, 0x0b, 0x72, 0x65, + 0x70, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x0b, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, + 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x32, 0x0a, 0x0c, 0x46, 0x61, 0x63, 0x65, + 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x88, 0x01, 0x0a, + 0x0e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, + 0x20, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x2a, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, + 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x18, 0x0a, + 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xac, 0x03, 0x0a, 0x0f, 0x46, 0x61, 0x63, 0x65, + 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x70, 0x61, + 0x6e, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x6e, + 0x79, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x04, 0x66, + 0x72, 0x6f, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x55, 0x73, 0x65, + 0x72, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x52, + 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x75, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x6b, 0x65, 0x73, + 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x4c, 0x69, 0x6b, 0x65, + 0x73, 0x12, 0x33, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, + 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x72, + 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x22, 0x35, 0x0a, 0x0d, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, + 0x49, 0x6e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, + 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x22, 0x66, 0x0a, + 0x0c, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x46, 0x72, 0x6f, 0x6d, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x75, 0x72, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xbe, 0x03, 0x0a, 0x0f, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, + 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, + 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x04, 0x66, + 0x72, 0x6f, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x46, 0x72, 0x6f, + 0x6d, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, + 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x2d, 0x0a, 0x05, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x18, 0x07, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x52, 0x05, 0x6d, + 0x65, 0x64, 0x69, 0x61, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, + 0x55, 0x72, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x65, + 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x66, 0x6f, 0x75, 0x6e, 0x64, 0x65, 0x64, + 0x12, 0x2a, 0x0a, 0x10, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, + 0x54, 0x79, 0x70, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6f, 0x72, 0x67, 0x61, + 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, + 0x77, 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x77, + 0x65, 0x62, 0x73, 0x69, 0x74, 0x65, 0x22, 0x30, 0x0a, 0x0a, 0x52, 0x65, 0x64, 0x64, 0x69, 0x74, + 0x55, 0x73, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xfd, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x64, + 0x64, 0x69, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x28, 0x0a, 0x04, + 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x64, 0x64, 0x69, 0x74, 0x55, 0x73, 0x65, 0x72, + 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x55, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x72, 0x65, 0x64, + 0x64, 0x69, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x75, 0x62, 0x72, 0x65, + 0x64, 0x64, 0x69, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x70, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x03, 0x75, 0x70, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x69, 0x73, 0x53, 0x75, 0x62, 0x6d, + 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x53, + 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x72, 0x22, 0x8c, 0x04, 0x0a, 0x0e, 0x54, 0x68, 0x72, + 0x65, 0x61, 0x64, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x72, + 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x55, 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, + 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x08, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x20, 0x0a, + 0x0b, 0x69, 0x73, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0b, 0x69, 0x73, 0x51, 0x75, 0x6f, 0x74, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x12, + 0x18, 0x0a, 0x07, 0x69, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, + 0x52, 0x07, 0x69, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x2a, 0x0a, 0x10, 0x69, 0x73, 0x52, + 0x65, 0x70, 0x6c, 0x79, 0x4f, 0x77, 0x6e, 0x65, 0x64, 0x42, 0x79, 0x4d, 0x65, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x10, 0x69, 0x73, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x4f, 0x77, 0x6e, 0x65, + 0x64, 0x42, 0x79, 0x4d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, + 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x70, + 0x6f, 0x73, 0x74, 0x49, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6f, 0x73, + 0x74, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x0d, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x54, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, + 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x72, 0x65, 0x70, 0x6c, 0x79, + 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, + 0x72, 0x65, 0x70, 0x6c, 0x79, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, + 0x09, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x75, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, + 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xe6, 0x01, 0x0a, 0x14, 0x54, 0x77, 0x69, 0x74, + 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, + 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x72, 0x73, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, + 0x65, 0x72, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x66, 0x6f, 0x6c, 0x6c, + 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0e, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x77, 0x65, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x77, 0x65, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x12, 0x1e, 0x0a, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x22, 0x3c, 0x0a, 0x16, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x66, 0x65, 0x72, + 0x65, 0x6e, 0x63, 0x65, 0x64, 0x54, 0x77, 0x65, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, + 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x0e, + 0x0a, 0x02, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xae, + 0x02, 0x0a, 0x0e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x54, + 0x6f, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, + 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, + 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, + 0x65, 0x55, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x44, 0x0a, 0x0d, 0x70, + 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, + 0x69, 0x74, 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x52, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, + 0x73, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x75, 0x72, 0x6c, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x22, + 0xa4, 0x05, 0x0a, 0x0e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, 0x61, 0x72, 0x6b, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x62, 0x6f, 0x6f, 0x6b, 0x6d, + 0x61, 0x72, 0x6b, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, + 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x28, 0x0a, 0x0f, + 0x69, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x69, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, + 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, + 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x44, + 0x0a, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, + 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x0d, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4d, 0x65, 0x74, + 0x72, 0x69, 0x63, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x71, 0x75, 0x6f, 0x74, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x4c, 0x0a, 0x10, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, + 0x65, 0x64, 0x54, 0x77, 0x65, 0x65, 0x74, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, + 0x72, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x54, 0x77, 0x65, 0x65, 0x74, + 0x52, 0x10, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x64, 0x54, 0x77, 0x65, 0x65, + 0x74, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x75, 0x6e, 0x74, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, + 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x52, 0x07, 0x72, + 0x65, 0x70, 0x6c, 0x79, 0x54, 0x6f, 0x12, 0x22, 0x0a, 0x0c, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, + 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x11, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0c, 0x74, 0x68, + 0x72, 0x65, 0x61, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, + 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x9c, 0x02, 0x0a, 0x0c, 0x59, 0x6f, 0x75, 0x54, 0x75, + 0x62, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, + 0x65, 0x6c, 0x55, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x68, 0x61, + 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, + 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, + 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, + 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, + 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x1a, 0x0a, + 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x72, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x72, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xd0, 0x02, 0x0a, 0x0e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, + 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x68, 0x61, 0x6e, + 0x6e, 0x65, 0x6c, 0x55, 0x72, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x68, + 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x72, 0x6c, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x12, 0x18, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, + 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, + 0x75, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, + 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, + 0x12, 0x28, 0x0a, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, + 0x55, 0x72, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x6c, 0x12, 0x30, 0x0a, 0x07, 0x72, 0x65, + 0x70, 0x6c, 0x69, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x52, 0x65, + 0x70, 0x6c, 0x79, 0x52, 0x07, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x08, + 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x75, 0x73, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x9e, 0x05, 0x0a, 0x12, 0x47, 0x65, 0x74, + 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x38, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, + 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x09, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x2f, 0x0a, 0x06, 0x74, 0x69, 0x6b, + 0x74, 0x6f, 0x6b, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, + 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, + 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x32, 0x0a, 0x07, 0x62, 0x6c, + 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x35, + 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, + 0x62, 0x6f, 0x6f, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x66, 0x61, 0x63, + 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x35, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, + 0x6e, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x2f, 0x0a, 0x06, + 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x64, 0x64, 0x69, 0x74, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x12, 0x32, 0x0a, + 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x68, 0x72, 0x65, 0x61, 0x64, + 0x73, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, + 0x73, 0x12, 0x32, 0x0a, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, + 0x69, 0x74, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x74, 0x77, + 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, + 0x18, 0x10, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, 0xc4, 0x01, 0x0a, 0x14, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x26, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x16, + 0xe2, 0xdf, 0x1f, 0x12, 0x2a, 0x0e, 0x69, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, + 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, + 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, + 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, + 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, + 0x22, 0x73, 0x0a, 0x17, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x8e, 0x01, 0x0a, 0x14, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, + 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xcb, 0x02, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, + 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x73, + 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x16, + 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x1a, + 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, + 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x69, + 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, + 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, + 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x79, 0x6f, + 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x79, 0x6f, 0x75, + 0x74, 0x75, 0x62, 0x65, 0x22, 0xdf, 0x01, 0x0a, 0x13, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x16, 0xe2, 0xdf, 0x1f, 0x12, 0x2a, 0x0e, + 0x69, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, + 0x52, 0x02, 0x69, 0x64, 0x12, 0x35, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe2, 0xdf, 0x1f, 0x17, 0x2a, 0x13, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, + 0x58, 0x01, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x49, 0x0a, 0x09, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, + 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, + 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, + 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xae, 0x01, 0x0a, 0x16, 0x49, 0x6e, 0x73, 0x74, 0x61, + 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, + 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, + 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, + 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xc5, 0x01, 0x0a, 0x13, 0x54, 0x69, 0x6b, 0x54, + 0x6f, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, @@ -11782,45 +11781,45 @@ var file_pb_ayrshare_proto_rawDesc = []byte{ 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, - 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, - 0x6c, 0x22, 0xad, 0x01, 0x0a, 0x15, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, - 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x22, 0xad, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x52, 0x65, - 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, - 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x22, 0xc6, 0x01, 0x0a, 0x14, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x70, - 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, - 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, - 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x22, 0xac, 0x01, 0x0a, 0x14, 0x59, - 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, + 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x49, 0x64, 0x22, + 0xd8, 0x01, 0x0a, 0x14, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x52, 0x65, 0x70, 0x6c, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, + 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x10, + 0x0a, 0x03, 0x63, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x63, 0x69, 0x64, + 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, 0x55, 0x72, 0x6c, 0x22, 0xad, 0x01, 0x0a, 0x15, 0x46, + 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, + 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xad, 0x01, 0x0a, 0x15, 0x4c, + 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, + 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, + 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xc6, 0x01, 0x0a, 0x14, 0x54, + 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, @@ -11830,362 +11829,375 @@ var file_pb_ayrshare_proto_rawDesc = []byte{ 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x22, 0xc1, 0x04, 0x0a, 0x14, 0x52, 0x65, - 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x3e, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, - 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x61, 0x72, - 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, - 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x09, 0x69, - 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x35, 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, - 0x6f, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, - 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6b, 0x54, 0x6f, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, - 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x38, 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, - 0x65, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, - 0x3b, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, - 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x3b, 0x0a, 0x08, - 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, - 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, - 0x49, 0x6e, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, - 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x38, 0x0a, 0x07, 0x74, 0x77, 0x69, - 0x74, 0x74, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x70, - 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, - 0x74, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x0d, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, - 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, 0xb2, 0x01, - 0x0a, 0x17, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, - 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1c, 0xe2, 0xdf, 0x1f, 0x18, 0x2a, 0x14, 0xe5, 0xb8, 0x96, - 0xe5, 0xad, 0x90, 0x49, 0x44, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, - 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, - 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, - 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, - 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, - 0x65, 0x79, 0x22, 0xee, 0x01, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, - 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x42, 0x79, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x49, - 0x44, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x22, 0xe2, 0xdf, 0x1f, 0x1e, 0x2a, 0x1a, 0x53, 0x6f, 0x63, 0x69, - 0x61, 0x6c, 0x20, 0x50, 0x6f, 0x73, 0x74, 0x20, 0x49, 0x44, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, - 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x49, 0x0a, 0x09, - 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, - 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, - 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, - 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x61, 0x72, 0x63, - 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x08, 0x52, 0x10, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, - 0x6d, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, - 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, - 0x4b, 0x65, 0x79, 0x22, 0xe6, 0x02, 0x0a, 0x18, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x0e, 0x0a, 0x02, - 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, - 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, - 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, - 0x6f, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, - 0x6f, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, - 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, - 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x09, - 0x70, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x09, 0x70, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x6e, - 0x61, 0x70, 0x63, 0x68, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x6e, - 0x61, 0x70, 0x63, 0x68, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, - 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, - 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, 0x69, 0x74, - 0x74, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, - 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x0d, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, 0x86, 0x01, 0x0a, - 0x19, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, - 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, - 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, - 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, - 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, - 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, - 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, - 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, - 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xee, 0x02, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, - 0x69, 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, - 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, - 0x6f, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, - 0x6f, 0x6b, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x6d, 0x62, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x67, 0x6d, 0x62, 0x12, 0x1c, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, - 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, - 0x61, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x1c, - 0x0a, 0x09, 0x70, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x70, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, - 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, - 0x64, 0x64, 0x69, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x6e, 0x61, 0x70, 0x63, 0x68, 0x61, 0x74, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x6e, 0x61, 0x70, 0x63, 0x68, 0x61, 0x74, - 0x12, 0x18, 0x0a, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, - 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, - 0x6f, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0c, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, - 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x79, - 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, 0xb3, 0x01, 0x0a, 0x13, 0x41, 0x75, 0x74, 0x6f, 0x48, - 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, - 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe2, 0xdf, - 0x1f, 0x1a, 0x2a, 0x16, 0x70, 0x6f, 0x73, 0x74, 0xe5, 0x86, 0x85, 0xe5, 0xae, 0xb9, 0xe4, 0xb8, - 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x04, 0x70, 0x6f, - 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, 0x61, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x03, 0x6d, 0x61, 0x78, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x1e, 0x0a, 0x0a, - 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x88, 0x01, 0x0a, - 0x14, 0x41, 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x72, 0x0a, 0x19, 0x43, 0x68, 0x65, 0x63, 0x6b, - 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe2, 0xdf, 0x1f, 0x17, 0x2a, 0x13, 0x68, 0x61, 0x73, - 0x68, 0x74, 0x61, 0x67, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, - 0x58, 0x01, 0x52, 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x70, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xac, 0x01, 0x0a, 0x1a, - 0x43, 0x68, 0x65, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, - 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x61, - 0x73, 0x68, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x61, 0x73, - 0x68, 0x74, 0x61, 0x67, 0x12, 0x16, 0x0a, 0x06, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, - 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x49, 0x0a, 0x15, 0x48, 0x61, + 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x6f, 0x73, + 0x74, 0x55, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x73, 0x74, + 0x55, 0x72, 0x6c, 0x22, 0xac, 0x01, 0x0a, 0x14, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, 0x52, + 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x6f, 0x75, + 0x72, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x18, 0x0a, 0x07, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x22, 0xc1, 0x04, 0x0a, 0x14, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x49, + 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x3e, 0x0a, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, + 0x49, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, + 0x6d, 0x12, 0x35, 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, 0x69, 0x6b, + 0x54, 0x6f, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, + 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x38, + 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x73, + 0x6b, 0x79, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, + 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, 0x3b, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, + 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, + 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x66, 0x61, 0x63, + 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x3b, 0x0a, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, + 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x49, 0x6e, 0x52, 0x65, 0x70, 0x6c, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x6c, 0x69, 0x6e, 0x6b, 0x65, 0x64, + 0x69, 0x6e, 0x12, 0x38, 0x0a, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x54, + 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x07, + 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x59, 0x6f, 0x75, 0x54, 0x75, 0x62, 0x65, + 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x79, + 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, 0xb2, 0x01, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x50, 0x6f, + 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1c, + 0xe2, 0xdf, 0x1f, 0x18, 0x2a, 0x14, 0xe5, 0xb8, 0x96, 0xe5, 0xad, 0x90, 0x49, 0x44, 0xe4, 0xb8, + 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x18, 0x02, 0x20, + 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, 0x61, 0x74, 0x66, + 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, 0xe8, 0xa1, 0xa8, + 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x60, 0x01, + 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xee, 0x01, 0x0a, 0x21, + 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, + 0x42, 0x79, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x32, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x22, 0xe2, + 0xdf, 0x1f, 0x1e, 0x2a, 0x1a, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x20, 0x50, 0x6f, 0x73, 0x74, + 0x20, 0x49, 0x44, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, + 0x01, 0x52, 0x02, 0x69, 0x64, 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, + 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, + 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, + 0x88, 0x97, 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, + 0xba, 0x58, 0x01, 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, + 0x12, 0x2a, 0x0a, 0x10, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, + 0x72, 0x6d, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x73, 0x65, 0x61, 0x72, + 0x63, 0x68, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xe6, 0x02, 0x0a, + 0x18, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, + 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x69, + 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x69, 0x6e, + 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x69, 0x6e, + 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x65, + 0x73, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x69, 0x6e, 0x74, 0x65, 0x72, + 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x6e, 0x61, 0x70, 0x63, 0x68, 0x61, 0x74, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x6e, 0x61, 0x70, 0x63, 0x68, 0x61, 0x74, 0x12, + 0x18, 0x0a, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, 0x61, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6b, + 0x74, 0x6f, 0x6b, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, + 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x07, 0x74, 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x79, + 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x79, 0x6f, + 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, 0x86, 0x01, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, + 0x69, 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x12, 0x49, 0x0a, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2b, 0xe2, 0xdf, 0x1f, 0x27, 0x2a, 0x21, 0x70, 0x6c, + 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0xe5, 0xb9, 0xb3, 0xe5, 0x8f, 0xb0, 0xe5, 0x88, 0x97, + 0xe8, 0xa1, 0xa8, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, + 0x01, 0x60, 0x01, 0x52, 0x09, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73, 0x12, 0x1e, + 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xee, + 0x02, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x62, 0x6c, 0x75, 0x65, 0x73, 0x6b, 0x79, 0x12, + 0x1a, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, 0x10, 0x0a, 0x03, 0x67, + 0x6d, 0x62, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x67, 0x6d, 0x62, 0x12, 0x1c, 0x0a, + 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x67, 0x72, 0x61, 0x6d, 0x12, 0x1a, 0x0a, 0x08, 0x6c, + 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, + 0x69, 0x6e, 0x6b, 0x65, 0x64, 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x65, 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x64, 0x64, 0x69, 0x74, 0x12, 0x1a, 0x0a, + 0x08, 0x73, 0x6e, 0x61, 0x70, 0x63, 0x68, 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x73, 0x6e, 0x61, 0x70, 0x63, 0x68, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x68, 0x72, + 0x65, 0x61, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x68, 0x72, 0x65, + 0x61, 0x64, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x18, 0x0b, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x69, 0x6b, 0x74, 0x6f, 0x6b, 0x12, 0x18, 0x0a, 0x07, 0x74, + 0x77, 0x69, 0x74, 0x74, 0x65, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x77, + 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x79, 0x6f, 0x75, 0x74, 0x75, 0x62, 0x65, 0x22, + 0xb3, 0x01, 0x0a, 0x13, 0x41, 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1e, 0xe2, 0xdf, 0x1f, 0x1a, 0x2a, 0x16, 0x70, 0x6f, 0x73, + 0x74, 0xe5, 0x86, 0x85, 0xe5, 0xae, 0xb9, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, + 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x6d, + 0x61, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6d, 0x61, 0x78, 0x12, 0x1a, 0x0a, + 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x6c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x61, 0x6e, + 0x67, 0x75, 0x61, 0x67, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x4b, 0x65, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, + 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x88, 0x01, 0x0a, 0x14, 0x41, 0x75, 0x74, 0x6f, 0x48, 0x61, + 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, + 0x0a, 0x04, 0x70, 0x6f, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, + 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x22, 0x72, 0x0a, 0x19, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, + 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, + 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, + 0xe2, 0xdf, 0x1f, 0x17, 0x2a, 0x13, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0xe4, 0xb8, 0x8d, + 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x07, 0x68, 0x61, 0x73, + 0x68, 0x74, 0x61, 0x67, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, + 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, + 0x65, 0x4b, 0x65, 0x79, 0x22, 0xac, 0x01, 0x0a, 0x1a, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x42, 0x61, + 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x12, 0x16, 0x0a, + 0x06, 0x62, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x62, + 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, + 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x22, 0x49, 0x0a, 0x15, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, + 0x76, 0x69, 0x65, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x09, 0x76, 0x69, 0x65, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x71, + 0x0a, 0x18, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, + 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x07, 0x6b, 0x65, + 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe2, 0xdf, 0x1f, + 0x17, 0x2a, 0x13, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, + 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, + 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x22, 0xde, 0x01, 0x0a, 0x19, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x48, + 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x49, 0x0a, 0x0f, 0x72, 0x65, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x76, 0x69, 0x65, 0x77, 0x43, 0x6f, 0x75, 0x6e, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x76, 0x69, 0x65, 0x77, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x71, 0x0a, 0x18, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x35, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x42, 0x1b, 0xe2, 0xdf, 0x1f, 0x17, 0x2a, 0x13, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, - 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, - 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0xde, 0x01, 0x0a, 0x19, 0x52, 0x65, 0x63, - 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, - 0x12, 0x49, 0x0a, 0x0f, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x6f, - 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x61, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, - 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x8e, 0x01, 0x0a, 0x15, 0x53, 0x65, - 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe2, 0xdf, 0x1f, 0x17, 0x2a, 0x13, 0x6b, 0x65, 0x79, 0x77, - 0x6f, 0x72, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, - 0x01, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, - 0x61, 0x72, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, 0x79, 0x22, 0x37, 0x0a, 0x11, 0x53, 0x65, - 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, - 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x22, 0x24, 0x0a, 0x12, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, - 0x68, 0x74, 0x61, 0x67, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x49, 0x0a, 0x15, 0x53, 0x65, 0x61, - 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, - 0x65, 0x6e, 0x12, 0x30, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, - 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x04, - 0x64, 0x61, 0x74, 0x61, 0x22, 0xb5, 0x02, 0x0a, 0x12, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, - 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x63, - 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x61, - 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, - 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, - 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, - 0x65, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, - 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, - 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, - 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, - 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, - 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x65, 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x6e, 0x6b, 0x12, 0x1c, - 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xc9, 0x02, 0x0a, - 0x16, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, - 0x35, 0x0a, 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, - 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x68, - 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x12, 0x42, 0x0a, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, - 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, - 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x52, 0x0d, 0x73, 0x65, 0x61, - 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, - 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, - 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, - 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x32, 0x8c, 0x0e, 0x0a, 0x08, 0x41, 0x79, 0x72, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x12, 0x35, 0x0a, 0x04, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x15, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, - 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x07, - 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, - 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x07, - 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x12, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x19, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, - 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0d, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1e, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, - 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, - 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x1c, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x72, - 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, - 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x47, 0x65, - 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x12, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, - 0x72, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, - 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, - 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x53, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, - 0x64, 0x12, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, - 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, - 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x25, 0x2e, 0x61, - 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, - 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, - 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x53, - 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x1c, 0x2e, 0x61, 0x72, 0x79, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, - 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, - 0x65, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, + 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x22, 0x8e, 0x01, 0x0a, 0x15, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, + 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x35, 0x0a, 0x07, + 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x1b, 0xe2, + 0xdf, 0x1f, 0x17, 0x2a, 0x13, 0x6b, 0x65, 0x79, 0x77, 0x6f, 0x72, 0x64, 0xe4, 0xb8, 0x8d, 0xe8, + 0x83, 0xbd, 0xe4, 0xb8, 0xba, 0xe7, 0xa9, 0xba, 0x58, 0x01, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x77, + 0x6f, 0x72, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x54, 0x79, 0x70, + 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x54, + 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x4b, 0x65, + 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x4b, 0x65, 0x79, 0x22, 0x37, 0x0a, 0x11, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, + 0x68, 0x74, 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x24, 0x0a, 0x12, + 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x43, 0x68, 0x69, + 0x6c, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, + 0x69, 0x64, 0x22, 0x49, 0x0a, 0x15, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, + 0x74, 0x61, 0x67, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x30, 0x0a, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, + 0x61, 0x67, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xb5, 0x02, + 0x0a, 0x12, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x61, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3b, + 0x0a, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, + 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x43, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, + 0x6e, 0x52, 0x08, 0x63, 0x68, 0x69, 0x6c, 0x64, 0x72, 0x65, 0x6e, 0x12, 0x24, 0x0a, 0x0d, 0x63, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x0d, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x43, 0x6f, 0x75, 0x6e, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x6c, 0x69, 0x6b, 0x65, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, + 0x1c, 0x0a, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x55, 0x72, 0x6c, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x65, 0x72, + 0x6d, 0x61, 0x6c, 0x69, 0x6e, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x65, + 0x72, 0x6d, 0x61, 0x6c, 0x69, 0x6e, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x22, 0xc9, 0x02, 0x0a, 0x16, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, + 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x35, 0x0a, 0x07, 0x68, 0x61, 0x73, 0x68, + 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, + 0x61, 0x67, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x68, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x12, + 0x42, 0x0a, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, + 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x4d, + 0x65, 0x64, 0x69, 0x61, 0x52, 0x0d, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, + 0x6c, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x05, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x6c, 0x61, 0x73, + 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, + 0x6c, 0x61, 0x73, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, + 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, + 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, + 0x65, 0x32, 0x8c, 0x0e, 0x0a, 0x08, 0x41, 0x79, 0x72, 0x73, 0x68, 0x61, 0x72, 0x65, 0x12, 0x35, + 0x0a, 0x04, 0x50, 0x6f, 0x73, 0x74, 0x12, 0x15, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, + 0x12, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, + 0x6f, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a, 0x07, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, + 0x12, 0x18, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x55, + 0x73, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, + 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x50, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, - 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x12, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, - 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, - 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, - 0x47, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, - 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x61, 0x72, 0x79, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0c, 0x52, 0x65, - 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x2e, 0x61, 0x72, 0x79, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x59, 0x0a, 0x10, 0x47, 0x65, 0x74, - 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x12, 0x21, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, - 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x22, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, - 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6d, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x42, 0x79, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, - 0x49, 0x44, 0x12, 0x2b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, - 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x42, 0x79, - 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x49, 0x44, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x22, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, - 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, - 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x12, 0x23, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x6e, - 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, - 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, - 0x69, 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0c, 0x41, 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, 0x68, - 0x74, 0x61, 0x67, 0x73, 0x12, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, - 0x41, 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x41, - 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x12, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x6e, - 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x12, 0x23, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, - 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, - 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x42, - 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x11, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, - 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x12, 0x22, 0x2e, 0x61, 0x72, 0x79, 0x73, - 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x48, 0x61, - 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, - 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, - 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x12, 0x53, 0x0a, 0x0e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, - 0x74, 0x61, 0x67, 0x73, 0x12, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, - 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, - 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0c, 0x5a, 0x0a, 0x2e, 0x2f, 0x61, 0x72, 0x79, - 0x73, 0x68, 0x61, 0x72, 0x65, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x47, 0x65, 0x74, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, + 0x57, 0x54, 0x12, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, + 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x6e, 0x65, + 0x72, 0x61, 0x74, 0x65, 0x4a, 0x57, 0x54, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x47, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1b, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, + 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x48, + 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x49, 0x64, 0x12, 0x1f, 0x2e, 0x61, 0x72, 0x79, + 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, + 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, + 0x79, 0x42, 0x79, 0x49, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, + 0x14, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x25, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, + 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, + 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, + 0x72, 0x79, 0x42, 0x79, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, 0x53, 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x12, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, + 0x65, 0x6e, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x6e, + 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x4a, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, + 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, + 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x4d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4a, 0x0a, 0x0b, + 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1c, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x43, + 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, + 0x65, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x50, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, + 0x6e, 0x74, 0x12, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0c, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, + 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, + 0x65, 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, + 0x70, 0x6c, 0x79, 0x43, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x59, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x12, 0x21, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, + 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x61, 0x72, 0x79, 0x73, + 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6d, 0x0a, + 0x1a, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, + 0x73, 0x42, 0x79, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x49, 0x44, 0x12, 0x2b, 0x2e, 0x61, 0x72, + 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, + 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x42, 0x79, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x49, + 0x44, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x22, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, + 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, + 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x12, + 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, + 0x63, 0x73, 0x12, 0x23, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x47, 0x65, + 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x6f, 0x63, 0x69, 0x61, 0x6c, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, + 0x0c, 0x41, 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1d, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, + 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1e, 0x2e, 0x61, + 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x48, 0x61, 0x73, 0x68, + 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5f, 0x0a, 0x12, + 0x43, 0x68, 0x65, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, + 0x61, 0x67, 0x12, 0x23, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x43, 0x68, + 0x65, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, + 0x72, 0x65, 0x2e, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x48, 0x61, + 0x73, 0x68, 0x74, 0x61, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, + 0x11, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, + 0x67, 0x73, 0x12, 0x22, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x52, 0x65, + 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, + 0x65, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x48, 0x61, 0x73, 0x68, 0x74, + 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x0e, 0x53, + 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x12, 0x1f, 0x2e, + 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x48, + 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x20, + 0x2e, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, + 0x48, 0x61, 0x73, 0x68, 0x74, 0x61, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x42, 0x0c, 0x5a, 0x0a, 0x2e, 0x2f, 0x61, 0x72, 0x79, 0x73, 0x68, 0x61, 0x72, 0x65, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/pkg/service/cast/work.go b/pkg/service/cast/work.go index b8f1e57..6775bf2 100644 --- a/pkg/service/cast/work.go +++ b/pkg/service/cast/work.go @@ -587,23 +587,27 @@ func PostAS(workUuid string) error { Visibility: "", } case cast.PlatformIDENUM_YOUTUBE: + // YouTube 发布选项配置 postReq.YouTubeOptions = &aryshare.YouTubeOptions{ - Title: workDetail.Title, - Description: "", - CategoryId: "", - MadeForKids: false, - Privacy: "public", - ThumbNail: coverUrl, - Tags: nil, - NotifySubscribers: true, + Title: workDetail.Title, + Visibility: "public", // 可见性设置:public/unlisted/private + Tags: nil, + // CategoryId: 0, // YouTube 分类 ID(例如:24 = Entertainment) + MadeForKids: false, + ThumbNail: coverUrl, + PlaylistId: "", + NotifySubscribers: true, + Shorts: false, + ContainsSyntheticMedia: false, + PublishAt: "", + SubTitleUrl: "", + SubTitleLanguage: "", + SubTitleName: "", } case cast.PlatformIDENUM_BULESKY: // BLUESKY + // Bluesky 发布选项配置 postReq.BlueskyOptions = &aryshare.BlueskyOptions{ - Labels: nil, - // Langs: []string{"en"}, - QuotedPostUri: "", - ReplyToPostUri: "", - ReplyToPostCid: "", + AltText: nil, // 图片或视频的替代文本数组(用于屏幕阅读器的无障碍功能) } } zap.L().Info("post 6", zap.Any("workUuid", workUuid), zap.Any("platformID", platformID)) From c86327c561d84af7c7b4dfef5998d1136a1d8871 Mon Sep 17 00:00:00 2001 From: cjy Date: Wed, 7 Jan 2026 14:34:33 +0800 Subject: [PATCH 19/19] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/图文导入模板.xlsx | Bin 11925 -> 11949 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/data/图文导入模板.xlsx b/data/图文导入模板.xlsx index 3ce26da67670209b528c439e0ff520c2c97d25e0..ba35759d972d3d8e78b9e03356bc0a446d174b2d 100644 GIT binary patch delta 1679 zcmV;A25|Y6U9DZPngIkAAmLz>o&g|#PlGTNhVM=M52W|d0*a;q7C*8pmzaprc-ORN zTO%!`?PUA+7TAzQ<7Io^^Yl3<%@=!B2VY>UY;=L*h@b#8Z-msF0=-tt@D>HuF)di# zXeiJDELxP87ddY!Zwx$}rUm09*uaytrMxZB*148qZ21-xvyo3|UtBjvG3SqeW`kSC zKiLLwLP&-cI3}25xCe&qL_|lV;1jalnR);Sj-dtx+F2Y&G5*OqFv|YfFjQtqCEcO* zGaYs3Y{AFkl-^r81-q_`x^&R+{xN=EJ-rO0hEn&t;(*FraLNrZ*O+o=!Q^;$(J!xN z)~)=W*Am42p}Z4HYH6M6J97L>JK%wX|40Q9cq2OcpDJ(Z!(+8XWkTXCjFXTg6}hF? zSCo*C{{6H5-f+B7M~i=nNfwegBsUewXi8|3&WI;KIe4G{it-y!O9KRx!73WFAp^1j z3LKkm6NUu<0KgZMfeIOu_5>YQ+AK}mZL*tZ1!P+rKrF~{(y!l<1Q-cIl!wiOafUlr zSEHE$&-}x4nmA9SC@ISpF7igML$Zj)G}|uRzwWM1rmjxFMbXrsPnzzB?R0+>(SuoWzhlt|PMIfw4ycyav-qEGGei5=Wdq zkrhdjg?l}Q#QIk*0$*VPzgeOEy=Tq-2uwDDKa))c}er72fmXIsMwbyk=>|cGV%WHf@Vxl8HcM)eg;)_B+>NdMQ*AdrU#8gN8(M4S7h_H)5Mo_=@K#Zu~ z^gxWTe(Ql4asA!{F#`Le2Vz9_&mM>o+MhiTBeu6a5F@yEJ&X=P9u9qi zp#53-1FrU$g1#z4R}gd#FpqI6y5(e++ zWx+r%(@Eda%YuPkrjx#-mkqti>!hle*~N6AE9s=F2icJh^cS5}brU;M%T5snsxR1) zTGo6RsCu>|wXEJSP?c##I<~CCPylTop>9;q_xzc z*8`pP9W@2>wpUxGq1C3S)Lc#daO- zt$2UgHr5nB75?`%{bo_vbPnQfaIvLX=_F(Wuc{+YOlk@>HdOy`mdp9a1LH6>Rih9X zTod@AHS#71O-GaZ4;s*hG2VX*HZ0b=C48SdIfl^R(qAxEgtBD?h4HnVS})w36}-Td z%LvJZt|X^}6S~drDc@C+#XJ>A{bu&Q{13Bf3K|~*%_o!5Cl!;LDJlfVBLD!CUMm)p z-YFUZ>y!B@lLQqY;b4=HD#rp7C6iezH32%4k1Iz3@srmpK>_NM87w*hp_5cBHUY?! zi!49^wUf*&cmi!ElW`^(lU^+-0-q+6aV8d%o-H2<9Gh+vh6Mlsz>~%;R|0_wli>sv ZlQb?b0+9@p;RF?vdM*_PaVY=*004`33;O^7 delta 1611 zcmV-R2DJIDU6oz1ngIk}(ZPI^o&g|#OT#b}hVKRcL&<%cq;o|=+u;Yhav(TSybHjtb>;G#e>j)|r~JMSBYu@gJc+$AAlLUB`D&3!n3+AVIl z_~cu_DIpow;JM_U;|>@%BN3gDQjExEZ>t_41%?VV81FDmDE`TMu-g6E&{rl&t^BbG zGo5s&Y$=A~m_9f)2HUnx+F7p={3(84J-zg!#>#ZN5`fBF3MMRYU)yr;z~*>z(Jimy z&ac9rHwxtavAmO78Rfj~I&%C+I}m`q|3C#91tT{2pDS;(hsX62l_{ZFOw*X8YjVrx zH;j;v?){7Y&TzQUCyRfHX%-V2lWa{=Hlu7lpAgT0viH9H73DXx0|U?j3Fz)HFm43^ z05Fr>1UFaGEKS>OvYTfGWLq0REXZ-vuiudb7zs+0hs}dchC5eRqnQEE{KHF{IM1Xg zDa#fv@i4c1tWiZ;lMGIuQ-KMy%PtCTz@%_Da2JIgHw>r!u^P5_v4AU zA)WrFfN3O_lK?@9BTk>miX_Rxy&gki{VNxN zOIW~fR%l<>t6j-F0?{$q;C;eZEP0?Y-!0q=x3>LYhtGs=cO0aQAd!C~x#`9v7KvB_ zjPU8CROGwsr1(WCS8OQoCL-fs69`LCb5u*o2sO@dS31M@p>jsn&aivw4Bxf$sdpCG zu6n`FNS zIwI^MkP*}`JrE=OetY3Q|MqI!3K#ahC?|~SR{j&#Rg!V@d#E9)(55x%WeGlXq zT^~}v$^WLQzLDU7gPe!YCcy*aFh2D_jKf&e9AL&OtARNr-NXo)juKPw0{ zv!j0FjBk1%#u-+J3Ie_Q$YPxFw?T*&`lhoEhdu-xg#JQ4mD@*W*_%SZ)&4SEx5_Z> z5JJ;8AJTozE))-kK0(m_to+5ZvGSLKz9>Ui5Of$TLcrC8T7==Cto+4Wb(4PxDgwn( zldA|>e^&*jOA#-L3%4!Bw5*Y72`h`06nI0llOlk+l#XTHv4oYyPRc+pYeyvv-qFi~ zfnKJQzN41~1HDWqeMc`FdXv{lRWGxP=|ES~NmUQBBOT~3I;rX=cBGb_A`Dbtup_ms z`7luRY)5KYy4#NFazOS95R$Oc|jN1m9}6lzST{^2Z_^N&ZyVMwV)AuuQ= z@I!0lO%R%nCiNdQpbcZZ{}yamtanHFK6i2qp}(U)VT=c5%L)qPVmT#VxH&6$fhm^} zk_%l)P6sD+n>|pzt0as0C6M~ftb6$%vw;d49|5(KoGCy7uan&=GXc|+5h{}eUeUpP zlc*}k0{bMBaVs?eB9o^pM*-QB?<+w8(vvYPIsu83Y%Debu#=-KKmnbTsvlT0oz0(lIR;RF?vk}een JSt$Sj003(4@B;t<