From 58cadc4795994e5520b9ad1c2b5c9465eb3d80ff Mon Sep 17 00:00:00 2001 From: hahwu <31872165+hahwu@users.noreply.github.com> Date: Tue, 21 Jan 2025 18:43:28 +0800 Subject: [PATCH] =?UTF-8?q?facebook=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/server/game/GameLogic.go | 17 +- src/server/game/PlayerFunc.go | 2 +- src/server/game/RegisterNetworkFunc.go | 25 +- src/server/msg/Gameapi.pb.go | 1888 +++++++++++++----------- 4 files changed, 1027 insertions(+), 905 deletions(-) diff --git a/src/server/game/GameLogic.go b/src/server/game/GameLogic.go index 1b2c3766..34bc37c1 100644 --- a/src/server/game/GameLogic.go +++ b/src/server/game/GameLogic.go @@ -740,14 +740,15 @@ func (ad *GameLogic) RegisterNetWorkFunc() { RegisterMsgProcessFunc("ReqDelFriend", ReqDelFriend) // 删除好友 // Facebook邀请好友 - RegisterMsgProcessFunc("ReqInviteFriendData", ReqInviteFriendData) // 请求邀请好友数据 - RegisterMsgProcessFunc("ReqSelfInvited", ReqSelfInvited) // 请求自己邀请的好友 - RegisterMsgProcessFunc("ReqGetInviteReward", ReqGetInviteReward) // 领取邀请奖励 - RegisterMsgProcessFunc("ReqAutoAddInviteFriend", ReqAutoAddInviteFriend) // 自动添加邀请好友 - RegisterMsgProcessFunc("ReqBindFacebookAccount", ReqBindFacebookAccount) // 绑定facebook账号 - RegisterMsgProcessFunc("ReqOnlyBindFacebook", ReqOnlyBindFacebook) // 绑定唯一facebook - RegisterMsgProcessFunc("ReqUnBindFacebook", ReqUnBindFacebook) // 解绑facebook - RegisterMsgProcessFunc("ReqSynGameData", ReqSynGameData) // 同步账号数据 + RegisterMsgProcessFunc("ReqInviteFriendData", ReqInviteFriendData) // 请求邀请好友数据 + RegisterMsgProcessFunc("ReqSelfInvited", ReqSelfInvited) // 请求自己邀请的好友 + RegisterMsgProcessFunc("ReqGetInviteReward", ReqGetInviteReward) // 领取邀请奖励 + RegisterMsgProcessFunc("ReqAutoAddInviteFriend", ReqAutoAddInviteFriend) // 自动添加邀请好友 + RegisterMsgProcessFunc("ReqAutoAddInviteFriend2", ReqAutoAddInviteFriend2) // 自动添加邀请好友 + RegisterMsgProcessFunc("ReqBindFacebookAccount", ReqBindFacebookAccount) // 绑定facebook账号 + RegisterMsgProcessFunc("ReqOnlyBindFacebook", ReqOnlyBindFacebook) // 绑定唯一facebook + RegisterMsgProcessFunc("ReqUnBindFacebook", ReqUnBindFacebook) // 解绑facebook + RegisterMsgProcessFunc("ReqSynGameData", ReqSynGameData) // 同步账号数据 // 榜单 RegisterMsgProcessFunc("ReqRank", ReqRank) // 请求榜单数据 diff --git a/src/server/game/PlayerFunc.go b/src/server/game/PlayerFunc.go index 5a4d9999..3be4535a 100644 --- a/src/server/game/PlayerFunc.go +++ b/src/server/game/PlayerFunc.go @@ -835,7 +835,7 @@ func Benchmark(player *Player) { player.HandleInUserRank() } -func GetUidByFaceBook(Fb int) int { +func GetUidByFaceBook(Fb string) int { sqlStr := "SELECT dwUin FROM t_player_baseinfo WHERE FaceBookId = ?" Uid := 0 db.SqlDb.Get(&Uid, sqlStr, Fb) diff --git a/src/server/game/RegisterNetworkFunc.go b/src/server/game/RegisterNetworkFunc.go index f4557b4b..77961378 100644 --- a/src/server/game/RegisterNetworkFunc.go +++ b/src/server/game/RegisterNetworkFunc.go @@ -2563,7 +2563,7 @@ func ReqAutoAddInviteFriend(args []interface{}) error { req := &msg.ReqAutoAddInviteFriend{} proto.Unmarshal(buf, req) FriendMod := player.PlayMod.getFriendMod() - Uid := GetUidByFaceBook(int(req.Id)) + Uid := int(req.Id) FriendMod.AddFriend(Uid) player.PlayMod.save() player.PushClientRes(&msg.ResAutoAddInviteFriend{ @@ -2581,6 +2581,29 @@ func ReqAutoAddInviteFriend(args []interface{}) error { return nil } +func ReqAutoAddInviteFriend2(args []interface{}) error { + _, player, buf := ParseArgs(args) + req := &msg.ReqAutoAddInviteFriend2{} + proto.Unmarshal(buf, req) + FriendMod := player.PlayMod.getFriendMod() + Uid := GetUidByFaceBook(req.Id) + FriendMod.AddFriend(Uid) + player.PlayMod.save() + player.PushClientRes(&msg.ResAutoAddInviteFriend2{ + ResultCode: 1, + }) + G_GameLogicPtr.FriendMgrSend(&MsqMod.Msg{ + From: int(player.M_DwUin), + To: Uid, + Type: MsqMod.HANDLE_TYPE_INVITE_ADD_FRIEND, + }) + player.TeLog("friend_add", map[string]interface{}{ + "player_id": req.Id, + "add_type": "invite add friend", + }) + return nil +} + func ReqSelectLimitEvent(args []interface{}) error { _, player, buf := ParseArgs(args) req := &msg.ReqSelectLimitEvent{} diff --git a/src/server/msg/Gameapi.pb.go b/src/server/msg/Gameapi.pb.go index e8ca90a0..3ef7f463 100644 --- a/src/server/msg/Gameapi.pb.go +++ b/src/server/msg/Gameapi.pb.go @@ -14492,7 +14492,7 @@ type ReqAutoAddInviteFriend struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` // uid } func (x *ReqAutoAddInviteFriend) Reset() { @@ -14525,7 +14525,7 @@ func (*ReqAutoAddInviteFriend) Descriptor() ([]byte, []int) { return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{256} } -func (x *ReqAutoAddInviteFriend) GetId() int32 { +func (x *ReqAutoAddInviteFriend) GetId() int64 { if x != nil { return x.Id } @@ -14577,6 +14577,96 @@ func (x *ResAutoAddInviteFriend) GetResultCode() int32 { return 0 } +type ReqAutoAddInviteFriend2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // facebook id +} + +func (x *ReqAutoAddInviteFriend2) Reset() { + *x = ReqAutoAddInviteFriend2{} + mi := &file_docs_proto_Gameapi_proto_msgTypes[258] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ReqAutoAddInviteFriend2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ReqAutoAddInviteFriend2) ProtoMessage() {} + +func (x *ReqAutoAddInviteFriend2) ProtoReflect() protoreflect.Message { + mi := &file_docs_proto_Gameapi_proto_msgTypes[258] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ReqAutoAddInviteFriend2.ProtoReflect.Descriptor instead. +func (*ReqAutoAddInviteFriend2) Descriptor() ([]byte, []int) { + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{258} +} + +func (x *ReqAutoAddInviteFriend2) GetId() string { + if x != nil { + return x.Id + } + return "" +} + +type ResAutoAddInviteFriend2 struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ResultCode int32 `protobuf:"varint,1,opt,name=ResultCode,proto3" json:"ResultCode,omitempty"` +} + +func (x *ResAutoAddInviteFriend2) Reset() { + *x = ResAutoAddInviteFriend2{} + mi := &file_docs_proto_Gameapi_proto_msgTypes[259] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *ResAutoAddInviteFriend2) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ResAutoAddInviteFriend2) ProtoMessage() {} + +func (x *ResAutoAddInviteFriend2) ProtoReflect() protoreflect.Message { + mi := &file_docs_proto_Gameapi_proto_msgTypes[259] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ResAutoAddInviteFriend2.ProtoReflect.Descriptor instead. +func (*ResAutoAddInviteFriend2) Descriptor() ([]byte, []int) { + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{259} +} + +func (x *ResAutoAddInviteFriend2) GetResultCode() int32 { + if x != nil { + return x.ResultCode + } + return 0 +} + // 挖矿活动 type ReqMining struct { state protoimpl.MessageState @@ -14586,7 +14676,7 @@ type ReqMining struct { func (x *ReqMining) Reset() { *x = ReqMining{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[258] + mi := &file_docs_proto_Gameapi_proto_msgTypes[260] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14598,7 +14688,7 @@ func (x *ReqMining) String() string { func (*ReqMining) ProtoMessage() {} func (x *ReqMining) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[258] + mi := &file_docs_proto_Gameapi_proto_msgTypes[260] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14611,7 +14701,7 @@ func (x *ReqMining) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqMining.ProtoReflect.Descriptor instead. func (*ReqMining) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{258} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{260} } type ResMining struct { @@ -14631,7 +14721,7 @@ type ResMining struct { func (x *ResMining) Reset() { *x = ResMining{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[259] + mi := &file_docs_proto_Gameapi_proto_msgTypes[261] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14643,7 +14733,7 @@ func (x *ResMining) String() string { func (*ResMining) ProtoMessage() {} func (x *ResMining) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[259] + mi := &file_docs_proto_Gameapi_proto_msgTypes[261] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14656,7 +14746,7 @@ func (x *ResMining) ProtoReflect() protoreflect.Message { // Deprecated: Use ResMining.ProtoReflect.Descriptor instead. func (*ResMining) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{259} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{261} } func (x *ResMining) GetId() int32 { @@ -14726,7 +14816,7 @@ type ReqMiningTake struct { func (x *ReqMiningTake) Reset() { *x = ReqMiningTake{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[260] + mi := &file_docs_proto_Gameapi_proto_msgTypes[262] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14738,7 +14828,7 @@ func (x *ReqMiningTake) String() string { func (*ReqMiningTake) ProtoMessage() {} func (x *ReqMiningTake) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[260] + mi := &file_docs_proto_Gameapi_proto_msgTypes[262] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14751,7 +14841,7 @@ func (x *ReqMiningTake) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqMiningTake.ProtoReflect.Descriptor instead. func (*ReqMiningTake) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{260} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{262} } func (x *ReqMiningTake) GetMap() map[int32]string { @@ -14779,7 +14869,7 @@ type ResMiningTake struct { func (x *ResMiningTake) Reset() { *x = ResMiningTake{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[261] + mi := &file_docs_proto_Gameapi_proto_msgTypes[263] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14791,7 +14881,7 @@ func (x *ResMiningTake) String() string { func (*ResMiningTake) ProtoMessage() {} func (x *ResMiningTake) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[261] + mi := &file_docs_proto_Gameapi_proto_msgTypes[263] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14804,7 +14894,7 @@ func (x *ResMiningTake) ProtoReflect() protoreflect.Message { // Deprecated: Use ResMiningTake.ProtoReflect.Descriptor instead. func (*ResMiningTake) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{261} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{263} } func (x *ResMiningTake) GetCode() RES_CODE { @@ -14829,7 +14919,7 @@ type ReqMiningReward struct { func (x *ReqMiningReward) Reset() { *x = ReqMiningReward{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[262] + mi := &file_docs_proto_Gameapi_proto_msgTypes[264] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14841,7 +14931,7 @@ func (x *ReqMiningReward) String() string { func (*ReqMiningReward) ProtoMessage() {} func (x *ReqMiningReward) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[262] + mi := &file_docs_proto_Gameapi_proto_msgTypes[264] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14854,7 +14944,7 @@ func (x *ReqMiningReward) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqMiningReward.ProtoReflect.Descriptor instead. func (*ReqMiningReward) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{262} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{264} } type ResMiningReward struct { @@ -14868,7 +14958,7 @@ type ResMiningReward struct { func (x *ResMiningReward) Reset() { *x = ResMiningReward{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[263] + mi := &file_docs_proto_Gameapi_proto_msgTypes[265] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14880,7 +14970,7 @@ func (x *ResMiningReward) String() string { func (*ResMiningReward) ProtoMessage() {} func (x *ResMiningReward) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[263] + mi := &file_docs_proto_Gameapi_proto_msgTypes[265] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14893,7 +14983,7 @@ func (x *ResMiningReward) ProtoReflect() protoreflect.Message { // Deprecated: Use ResMiningReward.ProtoReflect.Descriptor instead. func (*ResMiningReward) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{263} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{265} } func (x *ResMiningReward) GetCode() RES_CODE { @@ -14920,7 +15010,7 @@ type ResActRed struct { func (x *ResActRed) Reset() { *x = ResActRed{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[264] + mi := &file_docs_proto_Gameapi_proto_msgTypes[266] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14932,7 +15022,7 @@ func (x *ResActRed) String() string { func (*ResActRed) ProtoMessage() {} func (x *ResActRed) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[264] + mi := &file_docs_proto_Gameapi_proto_msgTypes[266] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14945,7 +15035,7 @@ func (x *ResActRed) ProtoReflect() protoreflect.Message { // Deprecated: Use ResActRed.ProtoReflect.Descriptor instead. func (*ResActRed) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{264} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{266} } func (x *ResActRed) GetRed() map[int32]int32 { @@ -14967,7 +15057,7 @@ type NotifyActRed struct { func (x *NotifyActRed) Reset() { *x = NotifyActRed{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[265] + mi := &file_docs_proto_Gameapi_proto_msgTypes[267] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -14979,7 +15069,7 @@ func (x *NotifyActRed) String() string { func (*NotifyActRed) ProtoMessage() {} func (x *NotifyActRed) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[265] + mi := &file_docs_proto_Gameapi_proto_msgTypes[267] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -14992,7 +15082,7 @@ func (x *NotifyActRed) ProtoReflect() protoreflect.Message { // Deprecated: Use NotifyActRed.ProtoReflect.Descriptor instead. func (*NotifyActRed) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{265} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{267} } func (x *NotifyActRed) GetId() int32 { @@ -15020,7 +15110,7 @@ type ActivityNotify struct { func (x *ActivityNotify) Reset() { *x = ActivityNotify{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[266] + mi := &file_docs_proto_Gameapi_proto_msgTypes[268] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15032,7 +15122,7 @@ func (x *ActivityNotify) String() string { func (*ActivityNotify) ProtoMessage() {} func (x *ActivityNotify) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[266] + mi := &file_docs_proto_Gameapi_proto_msgTypes[268] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15045,7 +15135,7 @@ func (x *ActivityNotify) ProtoReflect() protoreflect.Message { // Deprecated: Use ActivityNotify.ProtoReflect.Descriptor instead. func (*ActivityNotify) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{266} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{268} } func (x *ActivityNotify) GetInfo() *ActivityInfo { @@ -15065,7 +15155,7 @@ type ResItem struct { func (x *ResItem) Reset() { *x = ResItem{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[267] + mi := &file_docs_proto_Gameapi_proto_msgTypes[269] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15077,7 +15167,7 @@ func (x *ResItem) String() string { func (*ResItem) ProtoMessage() {} func (x *ResItem) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[267] + mi := &file_docs_proto_Gameapi_proto_msgTypes[269] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15090,7 +15180,7 @@ func (x *ResItem) ProtoReflect() protoreflect.Message { // Deprecated: Use ResItem.ProtoReflect.Descriptor instead. func (*ResItem) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{267} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{269} } func (x *ResItem) GetItem() map[int32]int32 { @@ -15110,7 +15200,7 @@ type ItemNotify struct { func (x *ItemNotify) Reset() { *x = ItemNotify{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[268] + mi := &file_docs_proto_Gameapi_proto_msgTypes[270] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15122,7 +15212,7 @@ func (x *ItemNotify) String() string { func (*ItemNotify) ProtoMessage() {} func (x *ItemNotify) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[268] + mi := &file_docs_proto_Gameapi_proto_msgTypes[270] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15135,7 +15225,7 @@ func (x *ItemNotify) ProtoReflect() protoreflect.Message { // Deprecated: Use ItemNotify.ProtoReflect.Descriptor instead. func (*ItemNotify) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{268} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{270} } func (x *ItemNotify) GetItem() map[int32]int32 { @@ -15154,7 +15244,7 @@ type ReqGuessColor struct { func (x *ReqGuessColor) Reset() { *x = ReqGuessColor{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[269] + mi := &file_docs_proto_Gameapi_proto_msgTypes[271] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15166,7 +15256,7 @@ func (x *ReqGuessColor) String() string { func (*ReqGuessColor) ProtoMessage() {} func (x *ReqGuessColor) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[269] + mi := &file_docs_proto_Gameapi_proto_msgTypes[271] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15179,7 +15269,7 @@ func (x *ReqGuessColor) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqGuessColor.ProtoReflect.Descriptor instead. func (*ReqGuessColor) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{269} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{271} } type ResGuessColor struct { @@ -15199,7 +15289,7 @@ type ResGuessColor struct { func (x *ResGuessColor) Reset() { *x = ResGuessColor{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[270] + mi := &file_docs_proto_Gameapi_proto_msgTypes[272] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15211,7 +15301,7 @@ func (x *ResGuessColor) String() string { func (*ResGuessColor) ProtoMessage() {} func (x *ResGuessColor) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[270] + mi := &file_docs_proto_Gameapi_proto_msgTypes[272] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15224,7 +15314,7 @@ func (x *ResGuessColor) ProtoReflect() protoreflect.Message { // Deprecated: Use ResGuessColor.ProtoReflect.Descriptor instead. func (*ResGuessColor) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{270} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{272} } func (x *ResGuessColor) GetId() int32 { @@ -15296,7 +15386,7 @@ type Opponent struct { func (x *Opponent) Reset() { *x = Opponent{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[271] + mi := &file_docs_proto_Gameapi_proto_msgTypes[273] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15308,7 +15398,7 @@ func (x *Opponent) String() string { func (*Opponent) ProtoMessage() {} func (x *Opponent) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[271] + mi := &file_docs_proto_Gameapi_proto_msgTypes[273] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15321,7 +15411,7 @@ func (x *Opponent) ProtoReflect() protoreflect.Message { // Deprecated: Use Opponent.ProtoReflect.Descriptor instead. func (*Opponent) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{271} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{273} } func (x *Opponent) GetName() string { @@ -15362,7 +15452,7 @@ type ReqGuessColorTake struct { func (x *ReqGuessColorTake) Reset() { *x = ReqGuessColorTake{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[272] + mi := &file_docs_proto_Gameapi_proto_msgTypes[274] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15374,7 +15464,7 @@ func (x *ReqGuessColorTake) String() string { func (*ReqGuessColorTake) ProtoMessage() {} func (x *ReqGuessColorTake) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[272] + mi := &file_docs_proto_Gameapi_proto_msgTypes[274] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15387,7 +15477,7 @@ func (x *ReqGuessColorTake) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqGuessColorTake.ProtoReflect.Descriptor instead. func (*ReqGuessColorTake) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{272} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{274} } func (x *ReqGuessColorTake) GetMap() map[int32]int32 { @@ -15408,7 +15498,7 @@ type ResGuessColorTake struct { func (x *ResGuessColorTake) Reset() { *x = ResGuessColorTake{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[273] + mi := &file_docs_proto_Gameapi_proto_msgTypes[275] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15420,7 +15510,7 @@ func (x *ResGuessColorTake) String() string { func (*ResGuessColorTake) ProtoMessage() {} func (x *ResGuessColorTake) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[273] + mi := &file_docs_proto_Gameapi_proto_msgTypes[275] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15433,7 +15523,7 @@ func (x *ResGuessColorTake) ProtoReflect() protoreflect.Message { // Deprecated: Use ResGuessColorTake.ProtoReflect.Descriptor instead. func (*ResGuessColorTake) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{273} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{275} } func (x *ResGuessColorTake) GetCode() RES_CODE { @@ -15458,7 +15548,7 @@ type ReqGuessColorReward struct { func (x *ReqGuessColorReward) Reset() { *x = ReqGuessColorReward{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[274] + mi := &file_docs_proto_Gameapi_proto_msgTypes[276] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15470,7 +15560,7 @@ func (x *ReqGuessColorReward) String() string { func (*ReqGuessColorReward) ProtoMessage() {} func (x *ReqGuessColorReward) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[274] + mi := &file_docs_proto_Gameapi_proto_msgTypes[276] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15483,7 +15573,7 @@ func (x *ReqGuessColorReward) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqGuessColorReward.ProtoReflect.Descriptor instead. func (*ReqGuessColorReward) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{274} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{276} } type ResGuessColorReward struct { @@ -15497,7 +15587,7 @@ type ResGuessColorReward struct { func (x *ResGuessColorReward) Reset() { *x = ResGuessColorReward{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[275] + mi := &file_docs_proto_Gameapi_proto_msgTypes[277] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15509,7 +15599,7 @@ func (x *ResGuessColorReward) String() string { func (*ResGuessColorReward) ProtoMessage() {} func (x *ResGuessColorReward) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[275] + mi := &file_docs_proto_Gameapi_proto_msgTypes[277] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15522,7 +15612,7 @@ func (x *ResGuessColorReward) ProtoReflect() protoreflect.Message { // Deprecated: Use ResGuessColorReward.ProtoReflect.Descriptor instead. func (*ResGuessColorReward) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{275} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{277} } func (x *ResGuessColorReward) GetCode() RES_CODE { @@ -15547,7 +15637,7 @@ type ReqRace struct { func (x *ReqRace) Reset() { *x = ReqRace{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[276] + mi := &file_docs_proto_Gameapi_proto_msgTypes[278] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15559,7 +15649,7 @@ func (x *ReqRace) String() string { func (*ReqRace) ProtoMessage() {} func (x *ReqRace) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[276] + mi := &file_docs_proto_Gameapi_proto_msgTypes[278] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15572,7 +15662,7 @@ func (x *ReqRace) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqRace.ProtoReflect.Descriptor instead. func (*ReqRace) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{276} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{278} } type ResRace struct { @@ -15593,7 +15683,7 @@ type ResRace struct { func (x *ResRace) Reset() { *x = ResRace{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[277] + mi := &file_docs_proto_Gameapi_proto_msgTypes[279] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15605,7 +15695,7 @@ func (x *ResRace) String() string { func (*ResRace) ProtoMessage() {} func (x *ResRace) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[277] + mi := &file_docs_proto_Gameapi_proto_msgTypes[279] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15618,7 +15708,7 @@ func (x *ResRace) ProtoReflect() protoreflect.Message { // Deprecated: Use ResRace.ProtoReflect.Descriptor instead. func (*ResRace) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{277} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{279} } func (x *ResRace) GetId() int32 { @@ -15696,7 +15786,7 @@ type Raceopponent struct { func (x *Raceopponent) Reset() { *x = Raceopponent{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[278] + mi := &file_docs_proto_Gameapi_proto_msgTypes[280] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15708,7 +15798,7 @@ func (x *Raceopponent) String() string { func (*Raceopponent) ProtoMessage() {} func (x *Raceopponent) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[278] + mi := &file_docs_proto_Gameapi_proto_msgTypes[280] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15721,7 +15811,7 @@ func (x *Raceopponent) ProtoReflect() protoreflect.Message { // Deprecated: Use Raceopponent.ProtoReflect.Descriptor instead. func (*Raceopponent) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{278} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{280} } func (x *Raceopponent) GetId() int32 { @@ -15753,7 +15843,7 @@ type ReqRaceStart struct { func (x *ReqRaceStart) Reset() { *x = ReqRaceStart{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[279] + mi := &file_docs_proto_Gameapi_proto_msgTypes[281] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15765,7 +15855,7 @@ func (x *ReqRaceStart) String() string { func (*ReqRaceStart) ProtoMessage() {} func (x *ReqRaceStart) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[279] + mi := &file_docs_proto_Gameapi_proto_msgTypes[281] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15778,7 +15868,7 @@ func (x *ReqRaceStart) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqRaceStart.ProtoReflect.Descriptor instead. func (*ReqRaceStart) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{279} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{281} } type ResRaceStart struct { @@ -15792,7 +15882,7 @@ type ResRaceStart struct { func (x *ResRaceStart) Reset() { *x = ResRaceStart{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[280] + mi := &file_docs_proto_Gameapi_proto_msgTypes[282] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15804,7 +15894,7 @@ func (x *ResRaceStart) String() string { func (*ResRaceStart) ProtoMessage() {} func (x *ResRaceStart) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[280] + mi := &file_docs_proto_Gameapi_proto_msgTypes[282] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15817,7 +15907,7 @@ func (x *ResRaceStart) ProtoReflect() protoreflect.Message { // Deprecated: Use ResRaceStart.ProtoReflect.Descriptor instead. func (*ResRaceStart) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{280} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{282} } func (x *ResRaceStart) GetCode() RES_CODE { @@ -15842,7 +15932,7 @@ type ReqRaceReward struct { func (x *ReqRaceReward) Reset() { *x = ReqRaceReward{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[281] + mi := &file_docs_proto_Gameapi_proto_msgTypes[283] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15854,7 +15944,7 @@ func (x *ReqRaceReward) String() string { func (*ReqRaceReward) ProtoMessage() {} func (x *ReqRaceReward) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[281] + mi := &file_docs_proto_Gameapi_proto_msgTypes[283] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15867,7 +15957,7 @@ func (x *ReqRaceReward) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqRaceReward.ProtoReflect.Descriptor instead. func (*ReqRaceReward) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{281} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{283} } type ResRaceReward struct { @@ -15881,7 +15971,7 @@ type ResRaceReward struct { func (x *ResRaceReward) Reset() { *x = ResRaceReward{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[282] + mi := &file_docs_proto_Gameapi_proto_msgTypes[284] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15893,7 +15983,7 @@ func (x *ResRaceReward) String() string { func (*ResRaceReward) ProtoMessage() {} func (x *ResRaceReward) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[282] + mi := &file_docs_proto_Gameapi_proto_msgTypes[284] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15906,7 +15996,7 @@ func (x *ResRaceReward) ProtoReflect() protoreflect.Message { // Deprecated: Use ResRaceReward.ProtoReflect.Descriptor instead. func (*ResRaceReward) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{282} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{284} } func (x *ResRaceReward) GetCode() RES_CODE { @@ -15932,7 +16022,7 @@ type ReqPlayroom struct { func (x *ReqPlayroom) Reset() { *x = ReqPlayroom{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[283] + mi := &file_docs_proto_Gameapi_proto_msgTypes[285] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15944,7 +16034,7 @@ func (x *ReqPlayroom) String() string { func (*ReqPlayroom) ProtoMessage() {} func (x *ReqPlayroom) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[283] + mi := &file_docs_proto_Gameapi_proto_msgTypes[285] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -15957,7 +16047,7 @@ func (x *ReqPlayroom) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroom.ProtoReflect.Descriptor instead. func (*ReqPlayroom) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{283} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{285} } type ResPlayroom struct { @@ -15983,7 +16073,7 @@ type ResPlayroom struct { func (x *ResPlayroom) Reset() { *x = ResPlayroom{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[284] + mi := &file_docs_proto_Gameapi_proto_msgTypes[286] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -15995,7 +16085,7 @@ func (x *ResPlayroom) String() string { func (*ResPlayroom) ProtoMessage() {} func (x *ResPlayroom) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[284] + mi := &file_docs_proto_Gameapi_proto_msgTypes[286] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16008,7 +16098,7 @@ func (x *ResPlayroom) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroom.ProtoReflect.Descriptor instead. func (*ResPlayroom) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{284} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{286} } func (x *ResPlayroom) GetStatus() int32 { @@ -16117,7 +16207,7 @@ type ReqPlayroomWrokOutline struct { func (x *ReqPlayroomWrokOutline) Reset() { *x = ReqPlayroomWrokOutline{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[285] + mi := &file_docs_proto_Gameapi_proto_msgTypes[287] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16129,7 +16219,7 @@ func (x *ReqPlayroomWrokOutline) String() string { func (*ReqPlayroomWrokOutline) ProtoMessage() {} func (x *ReqPlayroomWrokOutline) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[285] + mi := &file_docs_proto_Gameapi_proto_msgTypes[287] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16142,7 +16232,7 @@ func (x *ReqPlayroomWrokOutline) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomWrokOutline.ProtoReflect.Descriptor instead. func (*ReqPlayroomWrokOutline) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{285} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{287} } type ResPlayroomWrokOutline struct { @@ -16156,7 +16246,7 @@ type ResPlayroomWrokOutline struct { func (x *ResPlayroomWrokOutline) Reset() { *x = ResPlayroomWrokOutline{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[286] + mi := &file_docs_proto_Gameapi_proto_msgTypes[288] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16168,7 +16258,7 @@ func (x *ResPlayroomWrokOutline) String() string { func (*ResPlayroomWrokOutline) ProtoMessage() {} func (x *ResPlayroomWrokOutline) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[286] + mi := &file_docs_proto_Gameapi_proto_msgTypes[288] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16181,7 +16271,7 @@ func (x *ResPlayroomWrokOutline) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomWrokOutline.ProtoReflect.Descriptor instead. func (*ResPlayroomWrokOutline) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{286} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{288} } func (x *ResPlayroomWrokOutline) GetCode() RES_CODE { @@ -16208,7 +16298,7 @@ type NofiPlayroomStatus struct { func (x *NofiPlayroomStatus) Reset() { *x = NofiPlayroomStatus{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[287] + mi := &file_docs_proto_Gameapi_proto_msgTypes[289] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16220,7 +16310,7 @@ func (x *NofiPlayroomStatus) String() string { func (*NofiPlayroomStatus) ProtoMessage() {} func (x *NofiPlayroomStatus) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[287] + mi := &file_docs_proto_Gameapi_proto_msgTypes[289] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16233,7 +16323,7 @@ func (x *NofiPlayroomStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use NofiPlayroomStatus.ProtoReflect.Descriptor instead. func (*NofiPlayroomStatus) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{287} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{289} } func (x *NofiPlayroomStatus) GetWorkOutline() int32 { @@ -16254,7 +16344,7 @@ type NotifyPlayroomWork struct { func (x *NotifyPlayroomWork) Reset() { *x = NotifyPlayroomWork{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[288] + mi := &file_docs_proto_Gameapi_proto_msgTypes[290] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16266,7 +16356,7 @@ func (x *NotifyPlayroomWork) String() string { func (*NotifyPlayroomWork) ProtoMessage() {} func (x *NotifyPlayroomWork) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[288] + mi := &file_docs_proto_Gameapi_proto_msgTypes[290] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16279,7 +16369,7 @@ func (x *NotifyPlayroomWork) ProtoReflect() protoreflect.Message { // Deprecated: Use NotifyPlayroomWork.ProtoReflect.Descriptor instead. func (*NotifyPlayroomWork) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{288} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{290} } func (x *NotifyPlayroomWork) GetStartTime() int32 { @@ -16307,7 +16397,7 @@ type NotifyPlayroomLose struct { func (x *NotifyPlayroomLose) Reset() { *x = NotifyPlayroomLose{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[289] + mi := &file_docs_proto_Gameapi_proto_msgTypes[291] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16319,7 +16409,7 @@ func (x *NotifyPlayroomLose) String() string { func (*NotifyPlayroomLose) ProtoMessage() {} func (x *NotifyPlayroomLose) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[289] + mi := &file_docs_proto_Gameapi_proto_msgTypes[291] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16332,7 +16422,7 @@ func (x *NotifyPlayroomLose) ProtoReflect() protoreflect.Message { // Deprecated: Use NotifyPlayroomLose.ProtoReflect.Descriptor instead. func (*NotifyPlayroomLose) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{289} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{291} } func (x *NotifyPlayroomLose) GetLoseItem() []*ItemInfo { @@ -16360,7 +16450,7 @@ type NotifyPlayroomMood struct { func (x *NotifyPlayroomMood) Reset() { *x = NotifyPlayroomMood{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[290] + mi := &file_docs_proto_Gameapi_proto_msgTypes[292] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16372,7 +16462,7 @@ func (x *NotifyPlayroomMood) String() string { func (*NotifyPlayroomMood) ProtoMessage() {} func (x *NotifyPlayroomMood) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[290] + mi := &file_docs_proto_Gameapi_proto_msgTypes[292] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16385,7 +16475,7 @@ func (x *NotifyPlayroomMood) ProtoReflect() protoreflect.Message { // Deprecated: Use NotifyPlayroomMood.ProtoReflect.Descriptor instead. func (*NotifyPlayroomMood) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{290} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{292} } func (x *NotifyPlayroomMood) GetAllMood() int32 { @@ -16416,7 +16506,7 @@ type FriendRoom struct { func (x *FriendRoom) Reset() { *x = FriendRoom{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[291] + mi := &file_docs_proto_Gameapi_proto_msgTypes[293] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16428,7 +16518,7 @@ func (x *FriendRoom) String() string { func (*FriendRoom) ProtoMessage() {} func (x *FriendRoom) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[291] + mi := &file_docs_proto_Gameapi_proto_msgTypes[293] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16441,7 +16531,7 @@ func (x *FriendRoom) ProtoReflect() protoreflect.Message { // Deprecated: Use FriendRoom.ProtoReflect.Descriptor instead. func (*FriendRoom) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{291} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{293} } func (x *FriendRoom) GetUid() int64 { @@ -16493,7 +16583,7 @@ type RoomOpponent struct { func (x *RoomOpponent) Reset() { *x = RoomOpponent{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[292] + mi := &file_docs_proto_Gameapi_proto_msgTypes[294] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16505,7 +16595,7 @@ func (x *RoomOpponent) String() string { func (*RoomOpponent) ProtoMessage() {} func (x *RoomOpponent) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[292] + mi := &file_docs_proto_Gameapi_proto_msgTypes[294] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16518,7 +16608,7 @@ func (x *RoomOpponent) ProtoReflect() protoreflect.Message { // Deprecated: Use RoomOpponent.ProtoReflect.Descriptor instead. func (*RoomOpponent) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{292} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{294} } func (x *RoomOpponent) GetUid() int64 { @@ -16567,7 +16657,7 @@ type ReqPlayroomInfo struct { func (x *ReqPlayroomInfo) Reset() { *x = ReqPlayroomInfo{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[293] + mi := &file_docs_proto_Gameapi_proto_msgTypes[295] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16579,7 +16669,7 @@ func (x *ReqPlayroomInfo) String() string { func (*ReqPlayroomInfo) ProtoMessage() {} func (x *ReqPlayroomInfo) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[293] + mi := &file_docs_proto_Gameapi_proto_msgTypes[295] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16592,7 +16682,7 @@ func (x *ReqPlayroomInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomInfo.ProtoReflect.Descriptor instead. func (*ReqPlayroomInfo) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{293} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{295} } func (x *ReqPlayroomInfo) GetUid() int64 { @@ -16623,7 +16713,7 @@ type ResPlayroomInfo struct { func (x *ResPlayroomInfo) Reset() { *x = ResPlayroomInfo{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[294] + mi := &file_docs_proto_Gameapi_proto_msgTypes[296] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16635,7 +16725,7 @@ func (x *ResPlayroomInfo) String() string { func (*ResPlayroomInfo) ProtoMessage() {} func (x *ResPlayroomInfo) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[294] + mi := &file_docs_proto_Gameapi_proto_msgTypes[296] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16648,7 +16738,7 @@ func (x *ResPlayroomInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomInfo.ProtoReflect.Descriptor instead. func (*ResPlayroomInfo) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{294} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{296} } func (x *ResPlayroomInfo) GetUid() int64 { @@ -16746,7 +16836,7 @@ type ReqPlayroomFlip struct { func (x *ReqPlayroomFlip) Reset() { *x = ReqPlayroomFlip{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[295] + mi := &file_docs_proto_Gameapi_proto_msgTypes[297] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16758,7 +16848,7 @@ func (x *ReqPlayroomFlip) String() string { func (*ReqPlayroomFlip) ProtoMessage() {} func (x *ReqPlayroomFlip) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[295] + mi := &file_docs_proto_Gameapi_proto_msgTypes[297] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16771,7 +16861,7 @@ func (x *ReqPlayroomFlip) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomFlip.ProtoReflect.Descriptor instead. func (*ReqPlayroomFlip) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{295} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{297} } func (x *ReqPlayroomFlip) GetId() int32 { @@ -16794,7 +16884,7 @@ type ResPlayroomFlip struct { func (x *ResPlayroomFlip) Reset() { *x = ResPlayroomFlip{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[296] + mi := &file_docs_proto_Gameapi_proto_msgTypes[298] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16806,7 +16896,7 @@ func (x *ResPlayroomFlip) String() string { func (*ResPlayroomFlip) ProtoMessage() {} func (x *ResPlayroomFlip) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[296] + mi := &file_docs_proto_Gameapi_proto_msgTypes[298] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16819,7 +16909,7 @@ func (x *ResPlayroomFlip) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomFlip.ProtoReflect.Descriptor instead. func (*ResPlayroomFlip) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{296} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{298} } func (x *ResPlayroomFlip) GetCode() RES_CODE { @@ -16859,7 +16949,7 @@ type ReqPlayroomFlipReward struct { func (x *ReqPlayroomFlipReward) Reset() { *x = ReqPlayroomFlipReward{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[297] + mi := &file_docs_proto_Gameapi_proto_msgTypes[299] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16871,7 +16961,7 @@ func (x *ReqPlayroomFlipReward) String() string { func (*ReqPlayroomFlipReward) ProtoMessage() {} func (x *ReqPlayroomFlipReward) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[297] + mi := &file_docs_proto_Gameapi_proto_msgTypes[299] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16884,7 +16974,7 @@ func (x *ReqPlayroomFlipReward) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomFlipReward.ProtoReflect.Descriptor instead. func (*ReqPlayroomFlipReward) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{297} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{299} } type ResPlayroomFlipReward struct { @@ -16898,7 +16988,7 @@ type ResPlayroomFlipReward struct { func (x *ResPlayroomFlipReward) Reset() { *x = ResPlayroomFlipReward{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[298] + mi := &file_docs_proto_Gameapi_proto_msgTypes[300] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16910,7 +17000,7 @@ func (x *ResPlayroomFlipReward) String() string { func (*ResPlayroomFlipReward) ProtoMessage() {} func (x *ResPlayroomFlipReward) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[298] + mi := &file_docs_proto_Gameapi_proto_msgTypes[300] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16923,7 +17013,7 @@ func (x *ResPlayroomFlipReward) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomFlipReward.ProtoReflect.Descriptor instead. func (*ResPlayroomFlipReward) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{298} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{300} } func (x *ResPlayroomFlipReward) GetCode() RES_CODE { @@ -16950,7 +17040,7 @@ type ReqPlayroomGame struct { func (x *ReqPlayroomGame) Reset() { *x = ReqPlayroomGame{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[299] + mi := &file_docs_proto_Gameapi_proto_msgTypes[301] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -16962,7 +17052,7 @@ func (x *ReqPlayroomGame) String() string { func (*ReqPlayroomGame) ProtoMessage() {} func (x *ReqPlayroomGame) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[299] + mi := &file_docs_proto_Gameapi_proto_msgTypes[301] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -16975,7 +17065,7 @@ func (x *ReqPlayroomGame) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomGame.ProtoReflect.Descriptor instead. func (*ReqPlayroomGame) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{299} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{301} } func (x *ReqPlayroomGame) GetType() int32 { @@ -16998,7 +17088,7 @@ type ResPlayroomGame struct { func (x *ResPlayroomGame) Reset() { *x = ResPlayroomGame{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[300] + mi := &file_docs_proto_Gameapi_proto_msgTypes[302] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17010,7 +17100,7 @@ func (x *ResPlayroomGame) String() string { func (*ResPlayroomGame) ProtoMessage() {} func (x *ResPlayroomGame) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[300] + mi := &file_docs_proto_Gameapi_proto_msgTypes[302] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17023,7 +17113,7 @@ func (x *ResPlayroomGame) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomGame.ProtoReflect.Descriptor instead. func (*ResPlayroomGame) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{300} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{302} } func (x *ResPlayroomGame) GetCode() RES_CODE { @@ -17065,7 +17155,7 @@ type ReqPlayroomInteract struct { func (x *ReqPlayroomInteract) Reset() { *x = ReqPlayroomInteract{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[301] + mi := &file_docs_proto_Gameapi_proto_msgTypes[303] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17077,7 +17167,7 @@ func (x *ReqPlayroomInteract) String() string { func (*ReqPlayroomInteract) ProtoMessage() {} func (x *ReqPlayroomInteract) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[301] + mi := &file_docs_proto_Gameapi_proto_msgTypes[303] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17090,7 +17180,7 @@ func (x *ReqPlayroomInteract) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomInteract.ProtoReflect.Descriptor instead. func (*ReqPlayroomInteract) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{301} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{303} } func (x *ReqPlayroomInteract) GetId() int32 { @@ -17118,7 +17208,7 @@ type ResPlayroomInteract struct { func (x *ResPlayroomInteract) Reset() { *x = ResPlayroomInteract{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[302] + mi := &file_docs_proto_Gameapi_proto_msgTypes[304] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17130,7 +17220,7 @@ func (x *ResPlayroomInteract) String() string { func (*ResPlayroomInteract) ProtoMessage() {} func (x *ResPlayroomInteract) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[302] + mi := &file_docs_proto_Gameapi_proto_msgTypes[304] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17143,7 +17233,7 @@ func (x *ResPlayroomInteract) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomInteract.ProtoReflect.Descriptor instead. func (*ResPlayroomInteract) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{302} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{304} } func (x *ResPlayroomInteract) GetCode() RES_CODE { @@ -17170,7 +17260,7 @@ type ReqPlayroomSetRoom struct { func (x *ReqPlayroomSetRoom) Reset() { *x = ReqPlayroomSetRoom{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[303] + mi := &file_docs_proto_Gameapi_proto_msgTypes[305] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17182,7 +17272,7 @@ func (x *ReqPlayroomSetRoom) String() string { func (*ReqPlayroomSetRoom) ProtoMessage() {} func (x *ReqPlayroomSetRoom) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[303] + mi := &file_docs_proto_Gameapi_proto_msgTypes[305] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17195,7 +17285,7 @@ func (x *ReqPlayroomSetRoom) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomSetRoom.ProtoReflect.Descriptor instead. func (*ReqPlayroomSetRoom) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{303} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{305} } func (x *ReqPlayroomSetRoom) GetPlayroom() map[int32]int32 { @@ -17216,7 +17306,7 @@ type ResPlayroomSetRoom struct { func (x *ResPlayroomSetRoom) Reset() { *x = ResPlayroomSetRoom{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[304] + mi := &file_docs_proto_Gameapi_proto_msgTypes[306] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17228,7 +17318,7 @@ func (x *ResPlayroomSetRoom) String() string { func (*ResPlayroomSetRoom) ProtoMessage() {} func (x *ResPlayroomSetRoom) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[304] + mi := &file_docs_proto_Gameapi_proto_msgTypes[306] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17241,7 +17331,7 @@ func (x *ResPlayroomSetRoom) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomSetRoom.ProtoReflect.Descriptor instead. func (*ResPlayroomSetRoom) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{304} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{306} } func (x *ResPlayroomSetRoom) GetCode() RES_CODE { @@ -17268,7 +17358,7 @@ type ReqPlayroomSelectReward struct { func (x *ReqPlayroomSelectReward) Reset() { *x = ReqPlayroomSelectReward{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[305] + mi := &file_docs_proto_Gameapi_proto_msgTypes[307] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17280,7 +17370,7 @@ func (x *ReqPlayroomSelectReward) String() string { func (*ReqPlayroomSelectReward) ProtoMessage() {} func (x *ReqPlayroomSelectReward) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[305] + mi := &file_docs_proto_Gameapi_proto_msgTypes[307] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17293,7 +17383,7 @@ func (x *ReqPlayroomSelectReward) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomSelectReward.ProtoReflect.Descriptor instead. func (*ReqPlayroomSelectReward) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{305} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{307} } func (x *ReqPlayroomSelectReward) GetId() int32 { @@ -17314,7 +17404,7 @@ type ResPlayroomSelectReward struct { func (x *ResPlayroomSelectReward) Reset() { *x = ResPlayroomSelectReward{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[306] + mi := &file_docs_proto_Gameapi_proto_msgTypes[308] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17326,7 +17416,7 @@ func (x *ResPlayroomSelectReward) String() string { func (*ResPlayroomSelectReward) ProtoMessage() {} func (x *ResPlayroomSelectReward) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[306] + mi := &file_docs_proto_Gameapi_proto_msgTypes[308] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17339,7 +17429,7 @@ func (x *ResPlayroomSelectReward) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomSelectReward.ProtoReflect.Descriptor instead. func (*ResPlayroomSelectReward) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{306} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{308} } func (x *ResPlayroomSelectReward) GetCode() RES_CODE { @@ -17364,7 +17454,7 @@ type ReqPlayroomLose struct { func (x *ReqPlayroomLose) Reset() { *x = ReqPlayroomLose{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[307] + mi := &file_docs_proto_Gameapi_proto_msgTypes[309] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17376,7 +17466,7 @@ func (x *ReqPlayroomLose) String() string { func (*ReqPlayroomLose) ProtoMessage() {} func (x *ReqPlayroomLose) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[307] + mi := &file_docs_proto_Gameapi_proto_msgTypes[309] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17389,7 +17479,7 @@ func (x *ReqPlayroomLose) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomLose.ProtoReflect.Descriptor instead. func (*ReqPlayroomLose) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{307} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{309} } type ResPlayroomLose struct { @@ -17403,7 +17493,7 @@ type ResPlayroomLose struct { func (x *ResPlayroomLose) Reset() { *x = ResPlayroomLose{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[308] + mi := &file_docs_proto_Gameapi_proto_msgTypes[310] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17415,7 +17505,7 @@ func (x *ResPlayroomLose) String() string { func (*ResPlayroomLose) ProtoMessage() {} func (x *ResPlayroomLose) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[308] + mi := &file_docs_proto_Gameapi_proto_msgTypes[310] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17428,7 +17518,7 @@ func (x *ResPlayroomLose) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomLose.ProtoReflect.Descriptor instead. func (*ResPlayroomLose) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{308} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{310} } func (x *ResPlayroomLose) GetCode() RES_CODE { @@ -17454,7 +17544,7 @@ type ReqPlayroomWork struct { func (x *ReqPlayroomWork) Reset() { *x = ReqPlayroomWork{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[309] + mi := &file_docs_proto_Gameapi_proto_msgTypes[311] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17466,7 +17556,7 @@ func (x *ReqPlayroomWork) String() string { func (*ReqPlayroomWork) ProtoMessage() {} func (x *ReqPlayroomWork) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[309] + mi := &file_docs_proto_Gameapi_proto_msgTypes[311] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17479,7 +17569,7 @@ func (x *ReqPlayroomWork) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomWork.ProtoReflect.Descriptor instead. func (*ReqPlayroomWork) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{309} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{311} } type ResPlayroomWork struct { @@ -17493,7 +17583,7 @@ type ResPlayroomWork struct { func (x *ResPlayroomWork) Reset() { *x = ResPlayroomWork{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[310] + mi := &file_docs_proto_Gameapi_proto_msgTypes[312] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17505,7 +17595,7 @@ func (x *ResPlayroomWork) String() string { func (*ResPlayroomWork) ProtoMessage() {} func (x *ResPlayroomWork) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[310] + mi := &file_docs_proto_Gameapi_proto_msgTypes[312] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17518,7 +17608,7 @@ func (x *ResPlayroomWork) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomWork.ProtoReflect.Descriptor instead. func (*ResPlayroomWork) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{310} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{312} } func (x *ResPlayroomWork) GetCode() RES_CODE { @@ -17544,7 +17634,7 @@ type ReqPlayroomRest struct { func (x *ReqPlayroomRest) Reset() { *x = ReqPlayroomRest{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[311] + mi := &file_docs_proto_Gameapi_proto_msgTypes[313] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17556,7 +17646,7 @@ func (x *ReqPlayroomRest) String() string { func (*ReqPlayroomRest) ProtoMessage() {} func (x *ReqPlayroomRest) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[311] + mi := &file_docs_proto_Gameapi_proto_msgTypes[313] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17569,7 +17659,7 @@ func (x *ReqPlayroomRest) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomRest.ProtoReflect.Descriptor instead. func (*ReqPlayroomRest) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{311} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{313} } type ResPlayroomRest struct { @@ -17583,7 +17673,7 @@ type ResPlayroomRest struct { func (x *ResPlayroomRest) Reset() { *x = ResPlayroomRest{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[312] + mi := &file_docs_proto_Gameapi_proto_msgTypes[314] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17595,7 +17685,7 @@ func (x *ResPlayroomRest) String() string { func (*ResPlayroomRest) ProtoMessage() {} func (x *ResPlayroomRest) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[312] + mi := &file_docs_proto_Gameapi_proto_msgTypes[314] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17608,7 +17698,7 @@ func (x *ResPlayroomRest) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomRest.ProtoReflect.Descriptor instead. func (*ResPlayroomRest) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{312} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{314} } func (x *ResPlayroomRest) GetCode() RES_CODE { @@ -17633,7 +17723,7 @@ type ReqPlayroomDraw struct { func (x *ReqPlayroomDraw) Reset() { *x = ReqPlayroomDraw{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[313] + mi := &file_docs_proto_Gameapi_proto_msgTypes[315] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17645,7 +17735,7 @@ func (x *ReqPlayroomDraw) String() string { func (*ReqPlayroomDraw) ProtoMessage() {} func (x *ReqPlayroomDraw) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[313] + mi := &file_docs_proto_Gameapi_proto_msgTypes[315] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17658,7 +17748,7 @@ func (x *ReqPlayroomDraw) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomDraw.ProtoReflect.Descriptor instead. func (*ReqPlayroomDraw) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{313} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{315} } type ResPlayroomDraw struct { @@ -17673,7 +17763,7 @@ type ResPlayroomDraw struct { func (x *ResPlayroomDraw) Reset() { *x = ResPlayroomDraw{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[314] + mi := &file_docs_proto_Gameapi_proto_msgTypes[316] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17685,7 +17775,7 @@ func (x *ResPlayroomDraw) String() string { func (*ResPlayroomDraw) ProtoMessage() {} func (x *ResPlayroomDraw) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[314] + mi := &file_docs_proto_Gameapi_proto_msgTypes[316] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17698,7 +17788,7 @@ func (x *ResPlayroomDraw) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomDraw.ProtoReflect.Descriptor instead. func (*ResPlayroomDraw) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{314} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{316} } func (x *ResPlayroomDraw) GetCode() RES_CODE { @@ -17732,7 +17822,7 @@ type ReqPlayroomChip struct { func (x *ReqPlayroomChip) Reset() { *x = ReqPlayroomChip{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[315] + mi := &file_docs_proto_Gameapi_proto_msgTypes[317] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17744,7 +17834,7 @@ func (x *ReqPlayroomChip) String() string { func (*ReqPlayroomChip) ProtoMessage() {} func (x *ReqPlayroomChip) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[315] + mi := &file_docs_proto_Gameapi_proto_msgTypes[317] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17757,7 +17847,7 @@ func (x *ReqPlayroomChip) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomChip.ProtoReflect.Descriptor instead. func (*ReqPlayroomChip) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{315} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{317} } func (x *ReqPlayroomChip) GetNum() int32 { @@ -17778,7 +17868,7 @@ type ResPlayroomChip struct { func (x *ResPlayroomChip) Reset() { *x = ResPlayroomChip{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[316] + mi := &file_docs_proto_Gameapi_proto_msgTypes[318] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17790,7 +17880,7 @@ func (x *ResPlayroomChip) String() string { func (*ResPlayroomChip) ProtoMessage() {} func (x *ResPlayroomChip) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[316] + mi := &file_docs_proto_Gameapi_proto_msgTypes[318] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17803,7 +17893,7 @@ func (x *ResPlayroomChip) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomChip.ProtoReflect.Descriptor instead. func (*ResPlayroomChip) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{316} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{318} } func (x *ResPlayroomChip) GetCode() RES_CODE { @@ -17830,7 +17920,7 @@ type ReqPlayroomBuyItem struct { func (x *ReqPlayroomBuyItem) Reset() { *x = ReqPlayroomBuyItem{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[317] + mi := &file_docs_proto_Gameapi_proto_msgTypes[319] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17842,7 +17932,7 @@ func (x *ReqPlayroomBuyItem) String() string { func (*ReqPlayroomBuyItem) ProtoMessage() {} func (x *ReqPlayroomBuyItem) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[317] + mi := &file_docs_proto_Gameapi_proto_msgTypes[319] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17855,7 +17945,7 @@ func (x *ReqPlayroomBuyItem) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqPlayroomBuyItem.ProtoReflect.Descriptor instead. func (*ReqPlayroomBuyItem) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{317} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{319} } func (x *ReqPlayroomBuyItem) GetId() int32 { @@ -17876,7 +17966,7 @@ type ResPlayroomBuyItem struct { func (x *ResPlayroomBuyItem) Reset() { *x = ResPlayroomBuyItem{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[318] + mi := &file_docs_proto_Gameapi_proto_msgTypes[320] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17888,7 +17978,7 @@ func (x *ResPlayroomBuyItem) String() string { func (*ResPlayroomBuyItem) ProtoMessage() {} func (x *ResPlayroomBuyItem) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[318] + mi := &file_docs_proto_Gameapi_proto_msgTypes[320] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17901,7 +17991,7 @@ func (x *ResPlayroomBuyItem) ProtoReflect() protoreflect.Message { // Deprecated: Use ResPlayroomBuyItem.ProtoReflect.Descriptor instead. func (*ResPlayroomBuyItem) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{318} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{320} } func (x *ResPlayroomBuyItem) GetCode() RES_CODE { @@ -17927,7 +18017,7 @@ type ReqFriendTreasure struct { func (x *ReqFriendTreasure) Reset() { *x = ReqFriendTreasure{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[319] + mi := &file_docs_proto_Gameapi_proto_msgTypes[321] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17939,7 +18029,7 @@ func (x *ReqFriendTreasure) String() string { func (*ReqFriendTreasure) ProtoMessage() {} func (x *ReqFriendTreasure) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[319] + mi := &file_docs_proto_Gameapi_proto_msgTypes[321] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17952,7 +18042,7 @@ func (x *ReqFriendTreasure) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqFriendTreasure.ProtoReflect.Descriptor instead. func (*ReqFriendTreasure) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{319} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{321} } type ResFriendTreasure struct { @@ -17969,7 +18059,7 @@ type ResFriendTreasure struct { func (x *ResFriendTreasure) Reset() { *x = ResFriendTreasure{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[320] + mi := &file_docs_proto_Gameapi_proto_msgTypes[322] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -17981,7 +18071,7 @@ func (x *ResFriendTreasure) String() string { func (*ResFriendTreasure) ProtoMessage() {} func (x *ResFriendTreasure) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[320] + mi := &file_docs_proto_Gameapi_proto_msgTypes[322] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -17994,7 +18084,7 @@ func (x *ResFriendTreasure) ProtoReflect() protoreflect.Message { // Deprecated: Use ResFriendTreasure.ProtoReflect.Descriptor instead. func (*ResFriendTreasure) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{320} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{322} } func (x *ResFriendTreasure) GetStatus() int32 { @@ -18048,7 +18138,7 @@ type TreasureInfo struct { func (x *TreasureInfo) Reset() { *x = TreasureInfo{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[321] + mi := &file_docs_proto_Gameapi_proto_msgTypes[323] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18060,7 +18150,7 @@ func (x *TreasureInfo) String() string { func (*TreasureInfo) ProtoMessage() {} func (x *TreasureInfo) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[321] + mi := &file_docs_proto_Gameapi_proto_msgTypes[323] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18073,7 +18163,7 @@ func (x *TreasureInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use TreasureInfo.ProtoReflect.Descriptor instead. func (*TreasureInfo) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{321} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{323} } func (x *TreasureInfo) GetPos() int32 { @@ -18136,7 +18226,7 @@ type ReqFriendTreasureStart struct { func (x *ReqFriendTreasureStart) Reset() { *x = ReqFriendTreasureStart{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[322] + mi := &file_docs_proto_Gameapi_proto_msgTypes[324] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18148,7 +18238,7 @@ func (x *ReqFriendTreasureStart) String() string { func (*ReqFriendTreasureStart) ProtoMessage() {} func (x *ReqFriendTreasureStart) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[322] + mi := &file_docs_proto_Gameapi_proto_msgTypes[324] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18161,7 +18251,7 @@ func (x *ReqFriendTreasureStart) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqFriendTreasureStart.ProtoReflect.Descriptor instead. func (*ReqFriendTreasureStart) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{322} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{324} } func (x *ReqFriendTreasureStart) GetList() []*TreasureInfo { @@ -18189,7 +18279,7 @@ type ResFriendTreasureStart struct { func (x *ResFriendTreasureStart) Reset() { *x = ResFriendTreasureStart{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[323] + mi := &file_docs_proto_Gameapi_proto_msgTypes[325] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18201,7 +18291,7 @@ func (x *ResFriendTreasureStart) String() string { func (*ResFriendTreasureStart) ProtoMessage() {} func (x *ResFriendTreasureStart) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[323] + mi := &file_docs_proto_Gameapi_proto_msgTypes[325] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18214,7 +18304,7 @@ func (x *ResFriendTreasureStart) ProtoReflect() protoreflect.Message { // Deprecated: Use ResFriendTreasureStart.ProtoReflect.Descriptor instead. func (*ResFriendTreasureStart) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{323} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{325} } func (x *ResFriendTreasureStart) GetCode() RES_CODE { @@ -18239,7 +18329,7 @@ type ReqFriendTreasureEnd struct { func (x *ReqFriendTreasureEnd) Reset() { *x = ReqFriendTreasureEnd{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[324] + mi := &file_docs_proto_Gameapi_proto_msgTypes[326] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18251,7 +18341,7 @@ func (x *ReqFriendTreasureEnd) String() string { func (*ReqFriendTreasureEnd) ProtoMessage() {} func (x *ReqFriendTreasureEnd) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[324] + mi := &file_docs_proto_Gameapi_proto_msgTypes[326] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18264,7 +18354,7 @@ func (x *ReqFriendTreasureEnd) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqFriendTreasureEnd.ProtoReflect.Descriptor instead. func (*ReqFriendTreasureEnd) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{324} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{326} } type ResFriendTreasureEnd struct { @@ -18278,7 +18368,7 @@ type ResFriendTreasureEnd struct { func (x *ResFriendTreasureEnd) Reset() { *x = ResFriendTreasureEnd{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[325] + mi := &file_docs_proto_Gameapi_proto_msgTypes[327] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18290,7 +18380,7 @@ func (x *ResFriendTreasureEnd) String() string { func (*ResFriendTreasureEnd) ProtoMessage() {} func (x *ResFriendTreasureEnd) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[325] + mi := &file_docs_proto_Gameapi_proto_msgTypes[327] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18303,7 +18393,7 @@ func (x *ResFriendTreasureEnd) ProtoReflect() protoreflect.Message { // Deprecated: Use ResFriendTreasureEnd.ProtoReflect.Descriptor instead. func (*ResFriendTreasureEnd) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{325} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{327} } func (x *ResFriendTreasureEnd) GetCode() RES_CODE { @@ -18330,7 +18420,7 @@ type ReqFriendTreasureFilp struct { func (x *ReqFriendTreasureFilp) Reset() { *x = ReqFriendTreasureFilp{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[326] + mi := &file_docs_proto_Gameapi_proto_msgTypes[328] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18342,7 +18432,7 @@ func (x *ReqFriendTreasureFilp) String() string { func (*ReqFriendTreasureFilp) ProtoMessage() {} func (x *ReqFriendTreasureFilp) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[326] + mi := &file_docs_proto_Gameapi_proto_msgTypes[328] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18355,7 +18445,7 @@ func (x *ReqFriendTreasureFilp) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqFriendTreasureFilp.ProtoReflect.Descriptor instead. func (*ReqFriendTreasureFilp) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{326} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{328} } func (x *ReqFriendTreasureFilp) GetPos() int32 { @@ -18376,7 +18466,7 @@ type ResFriendTreasureFilp struct { func (x *ResFriendTreasureFilp) Reset() { *x = ResFriendTreasureFilp{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[327] + mi := &file_docs_proto_Gameapi_proto_msgTypes[329] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18388,7 +18478,7 @@ func (x *ResFriendTreasureFilp) String() string { func (*ResFriendTreasureFilp) ProtoMessage() {} func (x *ResFriendTreasureFilp) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[327] + mi := &file_docs_proto_Gameapi_proto_msgTypes[329] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18401,7 +18491,7 @@ func (x *ResFriendTreasureFilp) ProtoReflect() protoreflect.Message { // Deprecated: Use ResFriendTreasureFilp.ProtoReflect.Descriptor instead. func (*ResFriendTreasureFilp) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{327} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{329} } func (x *ResFriendTreasureFilp) GetCode() RES_CODE { @@ -18428,7 +18518,7 @@ type ResFriendTreasureStar struct { func (x *ResFriendTreasureStar) Reset() { *x = ResFriendTreasureStar{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[328] + mi := &file_docs_proto_Gameapi_proto_msgTypes[330] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18440,7 +18530,7 @@ func (x *ResFriendTreasureStar) String() string { func (*ResFriendTreasureStar) ProtoMessage() {} func (x *ResFriendTreasureStar) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[328] + mi := &file_docs_proto_Gameapi_proto_msgTypes[330] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18453,7 +18543,7 @@ func (x *ResFriendTreasureStar) ProtoReflect() protoreflect.Message { // Deprecated: Use ResFriendTreasureStar.ProtoReflect.Descriptor instead. func (*ResFriendTreasureStar) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{328} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{330} } func (x *ResFriendTreasureStar) GetStar() int32 { @@ -18474,7 +18564,7 @@ type ReqKafkaLog struct { func (x *ReqKafkaLog) Reset() { *x = ReqKafkaLog{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[329] + mi := &file_docs_proto_Gameapi_proto_msgTypes[331] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18486,7 +18576,7 @@ func (x *ReqKafkaLog) String() string { func (*ReqKafkaLog) ProtoMessage() {} func (x *ReqKafkaLog) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[329] + mi := &file_docs_proto_Gameapi_proto_msgTypes[331] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18499,7 +18589,7 @@ func (x *ReqKafkaLog) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqKafkaLog.ProtoReflect.Descriptor instead. func (*ReqKafkaLog) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{329} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{331} } func (x *ReqKafkaLog) GetEvent() string { @@ -18528,7 +18618,7 @@ type AdminReq struct { func (x *AdminReq) Reset() { *x = AdminReq{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[330] + mi := &file_docs_proto_Gameapi_proto_msgTypes[332] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18540,7 +18630,7 @@ func (x *AdminReq) String() string { func (*AdminReq) ProtoMessage() {} func (x *AdminReq) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[330] + mi := &file_docs_proto_Gameapi_proto_msgTypes[332] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18553,7 +18643,7 @@ func (x *AdminReq) ProtoReflect() protoreflect.Message { // Deprecated: Use AdminReq.ProtoReflect.Descriptor instead. func (*AdminReq) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{330} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{332} } func (x *AdminReq) GetFunc() string { @@ -18581,7 +18671,7 @@ type AdminRes struct { func (x *AdminRes) Reset() { *x = AdminRes{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[331] + mi := &file_docs_proto_Gameapi_proto_msgTypes[333] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18593,7 +18683,7 @@ func (x *AdminRes) String() string { func (*AdminRes) ProtoMessage() {} func (x *AdminRes) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[331] + mi := &file_docs_proto_Gameapi_proto_msgTypes[333] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18606,7 +18696,7 @@ func (x *AdminRes) ProtoReflect() protoreflect.Message { // Deprecated: Use AdminRes.ProtoReflect.Descriptor instead. func (*AdminRes) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{331} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{333} } func (x *AdminRes) GetFunc() string { @@ -18633,7 +18723,7 @@ type ReqAdminInfo struct { func (x *ReqAdminInfo) Reset() { *x = ReqAdminInfo{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[332] + mi := &file_docs_proto_Gameapi_proto_msgTypes[334] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18645,7 +18735,7 @@ func (x *ReqAdminInfo) String() string { func (*ReqAdminInfo) ProtoMessage() {} func (x *ReqAdminInfo) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[332] + mi := &file_docs_proto_Gameapi_proto_msgTypes[334] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18658,7 +18748,7 @@ func (x *ReqAdminInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqAdminInfo.ProtoReflect.Descriptor instead. func (*ReqAdminInfo) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{332} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{334} } func (x *ReqAdminInfo) GetUid() int64 { @@ -18676,7 +18766,7 @@ type ReqServerInfo struct { func (x *ReqServerInfo) Reset() { *x = ReqServerInfo{} - mi := &file_docs_proto_Gameapi_proto_msgTypes[333] + mi := &file_docs_proto_Gameapi_proto_msgTypes[335] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -18688,7 +18778,7 @@ func (x *ReqServerInfo) String() string { func (*ReqServerInfo) ProtoMessage() {} func (x *ReqServerInfo) ProtoReflect() protoreflect.Message { - mi := &file_docs_proto_Gameapi_proto_msgTypes[333] + mi := &file_docs_proto_Gameapi_proto_msgTypes[335] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -18701,7 +18791,7 @@ func (x *ReqServerInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ReqServerInfo.ProtoReflect.Descriptor instead. func (*ReqServerInfo) Descriptor() ([]byte, []int) { - return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{333} + return file_docs_proto_Gameapi_proto_rawDescGZIP(), []int{335} } var File_docs_proto_Gameapi_proto protoreflect.FileDescriptor @@ -20215,523 +20305,529 @@ var file_docs_proto_Gameapi_proto_rawDesc = []byte{ 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x28, 0x0a, 0x16, 0x52, 0x65, 0x71, 0x41, 0x75, 0x74, 0x6f, 0x41, 0x64, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, - 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x22, + 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x22, 0x38, 0x0a, 0x16, 0x52, 0x65, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x41, 0x64, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x52, - 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x0b, 0x0a, 0x09, 0x52, 0x65, 0x71, - 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0x8f, 0x02, 0x0a, 0x09, 0x52, 0x65, 0x73, 0x4d, 0x69, - 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, - 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x45, - 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, - 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x61, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x04, 0x50, 0x61, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x47, 0x65, 0x6d, 0x18, 0x06, 0x20, - 0x03, 0x28, 0x05, 0x52, 0x03, 0x47, 0x65, 0x6d, 0x12, 0x2e, 0x0a, 0x03, 0x4d, 0x61, 0x70, 0x18, - 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, - 0x2e, 0x52, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4d, 0x61, 0x70, 0x45, 0x6e, - 0x74, 0x72, 0x79, 0x52, 0x03, 0x4d, 0x61, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x4d, 0x69, 0x6e, 0x69, - 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, - 0x1a, 0x36, 0x0a, 0x08, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 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, 0x8d, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x71, - 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x6b, 0x65, 0x12, 0x32, 0x0a, 0x03, 0x4d, 0x61, - 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, - 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x6b, 0x65, - 0x2e, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x4d, 0x61, 0x70, 0x12, 0x10, - 0x0a, 0x03, 0x47, 0x65, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x47, 0x65, 0x6d, - 0x1a, 0x36, 0x0a, 0x08, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 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, 0x49, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x4d, - 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x6b, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, - 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, - 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x4d, 0x73, 0x67, 0x22, 0x11, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, - 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x4b, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x4d, 0x69, 0x6e, - 0x69, 0x6e, 0x67, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, - 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, - 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x4d, 0x73, 0x67, 0x22, 0x73, 0x0a, 0x09, 0x52, 0x65, 0x73, 0x41, 0x63, 0x74, 0x52, 0x65, 0x64, - 0x12, 0x2e, 0x0a, 0x03, 0x52, 0x65, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, - 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x41, 0x63, 0x74, 0x52, - 0x65, 0x64, 0x2e, 0x52, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x52, 0x65, 0x64, - 0x1a, 0x36, 0x0a, 0x08, 0x52, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x30, 0x0a, 0x0c, 0x4e, 0x6f, 0x74, 0x69, - 0x66, 0x79, 0x41, 0x63, 0x74, 0x52, 0x65, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x52, 0x65, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x52, 0x65, 0x64, 0x22, 0x3c, 0x0a, 0x0e, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x12, 0x2a, 0x0a, 0x04, - 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x74, 0x75, 0x74, - 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x73, 0x0a, 0x07, 0x52, 0x65, 0x73, 0x49, - 0x74, 0x65, 0x6d, 0x12, 0x2f, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, - 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, - 0x49, 0x74, 0x65, 0x6d, 0x1a, 0x37, 0x0a, 0x09, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x6e, 0x74, 0x72, - 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, - 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x79, 0x0a, - 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x12, 0x32, 0x0a, 0x04, 0x49, - 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x74, 0x75, 0x74, 0x6f, - 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, - 0x49, 0x74, 0x65, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x1a, - 0x37, 0x0a, 0x09, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, - 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x0f, 0x0a, 0x0d, 0x52, 0x65, 0x71, 0x47, - 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, 0xd9, 0x01, 0x0a, 0x0d, 0x52, 0x65, - 0x73, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, - 0x08, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x08, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x61, 0x73, - 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x50, 0x61, 0x73, 0x73, 0x12, 0x14, 0x0a, - 0x05, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x43, 0x6f, - 0x6c, 0x6f, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x05, - 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x2e, 0x0a, 0x08, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, - 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, - 0x61, 0x6c, 0x2e, 0x6f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x4f, 0x70, 0x70, - 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x22, 0x66, 0x0a, 0x08, 0x6f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, - 0x74, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x76, 0x61, - 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, - 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x83, 0x01, - 0x0a, 0x11, 0x52, 0x65, 0x71, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x54, - 0x61, 0x6b, 0x65, 0x12, 0x36, 0x0a, 0x03, 0x4d, 0x61, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x24, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x47, - 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x54, 0x61, 0x6b, 0x65, 0x2e, 0x4d, 0x61, - 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x4d, 0x61, 0x70, 0x1a, 0x36, 0x0a, 0x08, 0x4d, - 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, + 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x29, 0x0a, 0x17, 0x52, 0x65, 0x71, + 0x41, 0x75, 0x74, 0x6f, 0x41, 0x64, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x32, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x02, 0x69, 0x64, 0x22, 0x39, 0x0a, 0x17, 0x52, 0x65, 0x73, 0x41, 0x75, 0x74, 0x6f, 0x41, + 0x64, 0x64, 0x49, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x32, 0x12, + 0x1e, 0x0a, 0x0a, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0a, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, + 0x0b, 0x0a, 0x09, 0x52, 0x65, 0x71, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x22, 0x8f, 0x02, 0x0a, + 0x09, 0x52, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x07, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x61, 0x73, 0x73, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x50, 0x61, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, + 0x47, 0x65, 0x6d, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x03, 0x47, 0x65, 0x6d, 0x12, 0x2e, + 0x0a, 0x03, 0x4d, 0x61, 0x70, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x74, 0x75, + 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, + 0x2e, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x4d, 0x61, 0x70, 0x12, 0x16, + 0x0a, 0x06, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, + 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x1a, 0x36, 0x0a, 0x08, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 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, 0x8d, + 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x71, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x6b, 0x65, + 0x12, 0x32, 0x0a, 0x03, 0x4d, 0x61, 0x70, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, + 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x4d, 0x69, 0x6e, 0x69, + 0x6e, 0x67, 0x54, 0x61, 0x6b, 0x65, 0x2e, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x03, 0x4d, 0x61, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x47, 0x65, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x03, 0x47, 0x65, 0x6d, 0x1a, 0x36, 0x0a, 0x08, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 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, 0x49, + 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x6b, 0x65, 0x12, + 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, + 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, + 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x11, 0x0a, 0x0f, 0x52, 0x65, 0x71, + 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x4b, 0x0a, 0x0f, + 0x52, 0x65, 0x73, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, + 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, + 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, + 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x73, 0x0a, 0x09, 0x52, 0x65, 0x73, + 0x41, 0x63, 0x74, 0x52, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x03, 0x52, 0x65, 0x64, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, + 0x65, 0x73, 0x41, 0x63, 0x74, 0x52, 0x65, 0x64, 0x2e, 0x52, 0x65, 0x64, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x03, 0x52, 0x65, 0x64, 0x1a, 0x36, 0x0a, 0x08, 0x52, 0x65, 0x64, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x30, + 0x0a, 0x0c, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x41, 0x63, 0x74, 0x52, 0x65, 0x64, 0x12, 0x0e, + 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x10, + 0x0a, 0x03, 0x52, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x52, 0x65, 0x64, + 0x22, 0x3c, 0x0a, 0x0e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x4e, 0x6f, 0x74, 0x69, + 0x66, 0x79, 0x12, 0x2a, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x16, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x41, 0x63, 0x74, 0x69, + 0x76, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x73, + 0x0a, 0x07, 0x52, 0x65, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x2f, 0x0a, 0x04, 0x49, 0x74, 0x65, + 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, + 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x45, + 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x1a, 0x37, 0x0a, 0x09, 0x49, 0x74, + 0x65, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x22, 0x4d, 0x0a, 0x11, 0x52, 0x65, 0x73, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, - 0x6f, 0x6c, 0x6f, 0x72, 0x54, 0x61, 0x6b, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, - 0x73, 0x67, 0x22, 0x15, 0x0a, 0x13, 0x52, 0x65, 0x71, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, - 0x6c, 0x6f, 0x72, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x4f, 0x0a, 0x13, 0x52, 0x65, 0x73, - 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, - 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, - 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x09, 0x0a, 0x07, 0x52, 0x65, - 0x71, 0x52, 0x61, 0x63, 0x65, 0x22, 0x93, 0x02, 0x0a, 0x07, 0x52, 0x65, 0x73, 0x52, 0x61, 0x63, - 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, + 0x02, 0x38, 0x01, 0x22, 0x79, 0x0a, 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x4e, 0x6f, 0x74, 0x69, 0x66, + 0x79, 0x12, 0x32, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x1e, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x4e, + 0x6f, 0x74, 0x69, 0x66, 0x79, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, + 0x04, 0x49, 0x74, 0x65, 0x6d, 0x1a, 0x37, 0x0a, 0x09, 0x49, 0x74, 0x65, 0x6d, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x0f, + 0x0a, 0x0d, 0x52, 0x65, 0x71, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x22, + 0xd9, 0x01, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, + 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x61, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x50, - 0x61, 0x73, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x47, 0x61, 0x6d, 0x65, - 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x47, 0x61, 0x6d, - 0x65, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, - 0x47, 0x61, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x50, - 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, - 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x32, 0x0a, 0x08, 0x4f, 0x70, 0x70, 0x6f, 0x6e, - 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x74, 0x75, 0x74, 0x6f, - 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x72, 0x61, 0x63, 0x65, 0x6f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, - 0x74, 0x52, 0x08, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x22, 0x50, 0x0a, 0x0c, 0x72, - 0x61, 0x63, 0x65, 0x6f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x49, - 0x6d, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x49, 0x6d, 0x61, 0x67, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x0e, 0x0a, - 0x0c, 0x52, 0x65, 0x71, 0x52, 0x61, 0x63, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x22, 0x48, 0x0a, - 0x0c, 0x52, 0x65, 0x73, 0x52, 0x61, 0x63, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x26, 0x0a, - 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, - 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, - 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x0f, 0x0a, 0x0d, 0x52, 0x65, 0x71, 0x52, 0x61, - 0x63, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x49, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x52, - 0x61, 0x63, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, - 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, - 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x4d, 0x73, 0x67, 0x22, 0x0d, 0x0a, 0x0b, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, - 0x6f, 0x6d, 0x22, 0x8f, 0x05, 0x0a, 0x0b, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, - 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x28, 0x0a, 0x05, 0x49, 0x74, - 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, - 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x49, - 0x74, 0x65, 0x6d, 0x73, 0x12, 0x32, 0x0a, 0x08, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, - 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x52, 0x08, - 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x2c, 0x0a, 0x06, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, - 0x69, 0x61, 0x6c, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x06, - 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x3f, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, - 0x6f, 0x6d, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, - 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x2e, - 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x50, - 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6c, 0x6c, 0x65, - 0x63, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, - 0x74, 0x12, 0x33, 0x0a, 0x04, 0x4d, 0x6f, 0x6f, 0x64, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x1f, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x50, 0x6c, - 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x2e, 0x4d, 0x6f, 0x6f, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x52, 0x04, 0x4d, 0x6f, 0x6f, 0x64, 0x12, 0x2e, 0x0a, 0x08, 0x4c, 0x6f, 0x73, 0x65, 0x49, 0x74, - 0x65, 0x6d, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, - 0x69, 0x61, 0x6c, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x4c, 0x6f, - 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, - 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x53, 0x74, 0x61, 0x72, 0x74, + 0x61, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x18, 0x06, 0x20, 0x03, + 0x28, 0x05, 0x52, 0x05, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, + 0x18, 0x07, 0x20, 0x03, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x2e, 0x0a, 0x08, 0x4f, + 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, + 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x6f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x52, 0x08, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x22, 0x66, 0x0a, 0x08, 0x6f, + 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x46, + 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x61, 0x63, 0x65, 0x12, + 0x16, 0x0a, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x22, 0x83, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x71, 0x47, 0x75, 0x65, 0x73, 0x73, + 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x54, 0x61, 0x6b, 0x65, 0x12, 0x36, 0x0a, 0x03, 0x4d, 0x61, 0x70, + 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, + 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x54, + 0x61, 0x6b, 0x65, 0x2e, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x4d, 0x61, + 0x70, 0x1a, 0x36, 0x0a, 0x08, 0x4d, 0x61, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x4d, 0x0a, 0x11, 0x52, 0x65, 0x73, + 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x54, 0x61, 0x6b, 0x65, 0x12, 0x26, + 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, + 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x15, 0x0a, 0x13, 0x52, 0x65, 0x71, 0x47, + 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, + 0x4f, 0x0a, 0x13, 0x52, 0x65, 0x73, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, + 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, + 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, + 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, + 0x22, 0x09, 0x0a, 0x07, 0x52, 0x65, 0x71, 0x52, 0x61, 0x63, 0x65, 0x22, 0x93, 0x02, 0x0a, 0x07, + 0x52, 0x65, 0x73, 0x52, 0x61, 0x63, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x18, 0x0a, 0x07, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x54, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x54, 0x65, 0x6d, + 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x61, 0x73, 0x73, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x04, 0x50, 0x61, 0x73, 0x73, 0x12, 0x24, 0x0a, 0x0d, 0x47, 0x61, 0x6d, + 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x0d, 0x47, 0x61, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, + 0x20, 0x0a, 0x0b, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x47, 0x61, 0x6d, 0x65, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, + 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x32, 0x0a, + 0x08, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x16, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x72, 0x61, 0x63, 0x65, 0x6f, + 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x22, 0x50, 0x0a, 0x0c, 0x72, 0x61, 0x63, 0x65, 0x6f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, + 0x64, 0x12, 0x14, 0x0a, 0x05, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x50, 0x72, 0x6f, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x22, 0x0e, 0x0a, 0x0c, 0x52, 0x65, 0x71, 0x52, 0x61, 0x63, 0x65, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x22, 0x48, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x52, 0x61, 0x63, 0x65, 0x53, 0x74, + 0x61, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, + 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, + 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x0f, 0x0a, + 0x0d, 0x52, 0x65, 0x71, 0x52, 0x61, 0x63, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x49, + 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x52, 0x61, 0x63, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, + 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, + 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, + 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x0d, 0x0a, 0x0b, 0x52, 0x65, 0x71, + 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x22, 0x8f, 0x05, 0x0a, 0x0b, 0x52, 0x65, 0x73, + 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x28, 0x0a, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x32, 0x0a, 0x08, 0x4f, 0x70, + 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x4f, 0x70, 0x70, 0x6f, + 0x6e, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x2c, + 0x0a, 0x06, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, + 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x06, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x12, 0x3f, 0x0a, 0x08, + 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, + 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, + 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x12, 0x18, 0x0a, + 0x07, 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x05, 0x52, 0x07, + 0x63, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x33, 0x0a, 0x04, 0x4d, 0x6f, 0x6f, 0x64, 0x18, + 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, + 0x2e, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x2e, 0x4d, 0x6f, 0x6f, + 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x4d, 0x6f, 0x6f, 0x64, 0x12, 0x2e, 0x0a, 0x08, + 0x4c, 0x6f, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, + 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x08, 0x4c, 0x6f, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x1c, 0x0a, 0x09, + 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x09, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x57, 0x6f, + 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, + 0x57, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x6c, + 0x6c, 0x4d, 0x6f, 0x6f, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x41, 0x6c, 0x6c, + 0x4d, 0x6f, 0x6f, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x68, 0x69, 0x70, 0x18, 0x0c, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x04, 0x43, 0x68, 0x69, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, + 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x57, + 0x6f, 0x72, 0x6b, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x4a, 0x61, + 0x63, 0x6b, 0x70, 0x6f, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4a, 0x61, 0x63, + 0x6b, 0x70, 0x6f, 0x74, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, + 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x4d, 0x6f, 0x6f, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, + 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, + 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x18, 0x0a, 0x16, 0x52, 0x65, + 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x57, 0x72, 0x6f, 0x6b, 0x4f, 0x75, 0x74, + 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x52, 0x0a, 0x16, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, + 0x6f, 0x6f, 0x6d, 0x57, 0x72, 0x6f, 0x6b, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x26, + 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, + 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x36, 0x0a, 0x12, 0x4e, 0x6f, 0x66, 0x69, + 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, + 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, + 0x22, 0x52, 0x0a, 0x12, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, + 0x6f, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, + 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x57, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x57, 0x6f, 0x72, 0x6b, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x6c, 0x6c, 0x4d, 0x6f, 0x6f, 0x64, 0x18, - 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x41, 0x6c, 0x6c, 0x4d, 0x6f, 0x6f, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x43, 0x68, 0x69, 0x70, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x43, 0x68, - 0x69, 0x70, 0x12, 0x20, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, - 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x57, 0x6f, 0x72, 0x6b, 0x4f, 0x75, 0x74, - 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x4a, 0x61, 0x63, 0x6b, 0x70, 0x6f, 0x74, 0x18, - 0x0e, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x4a, 0x61, 0x63, 0x6b, 0x70, 0x6f, 0x74, 0x1a, 0x3b, - 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, - 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, - 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x4d, + 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x57, 0x6f, 0x72, 0x6b, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x22, 0x58, 0x0a, 0x12, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x50, 0x6c, + 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x4c, 0x6f, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x4c, 0x6f, + 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x08, 0x4c, 0x6f, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x68, + 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x43, 0x68, 0x69, 0x70, 0x22, 0xa3, + 0x01, 0x0a, 0x12, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, + 0x6d, 0x4d, 0x6f, 0x6f, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x6c, 0x6c, 0x4d, 0x6f, 0x6f, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x41, 0x6c, 0x6c, 0x4d, 0x6f, 0x6f, 0x64, 0x12, + 0x3a, 0x0a, 0x04, 0x4d, 0x6f, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, + 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x50, + 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x4d, 0x6f, 0x6f, 0x64, 0x2e, 0x4d, 0x6f, 0x6f, 0x64, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x4d, 0x6f, 0x6f, 0x64, 0x1a, 0x37, 0x0a, 0x09, 0x4d, 0x6f, 0x6f, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x3a, 0x02, 0x38, 0x01, 0x22, 0x18, 0x0a, 0x16, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, - 0x6f, 0x6f, 0x6d, 0x57, 0x72, 0x6f, 0x6b, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x52, - 0x0a, 0x16, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x57, 0x72, 0x6f, - 0x6b, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, - 0x73, 0x67, 0x22, 0x36, 0x0a, 0x12, 0x4e, 0x6f, 0x66, 0x69, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, - 0x6f, 0x6d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x57, 0x6f, 0x72, 0x6b, - 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x57, - 0x6f, 0x72, 0x6b, 0x4f, 0x75, 0x74, 0x6c, 0x69, 0x6e, 0x65, 0x22, 0x52, 0x0a, 0x12, 0x4e, 0x6f, - 0x74, 0x69, 0x66, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x57, 0x6f, 0x72, 0x6b, - 0x12, 0x1c, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x09, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, - 0x0a, 0x0a, 0x57, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x0a, 0x57, 0x6f, 0x72, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x58, - 0x0a, 0x12, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, - 0x4c, 0x6f, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x08, 0x4c, 0x6f, 0x73, 0x65, 0x49, 0x74, 0x65, 0x6d, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x08, 0x4c, 0x6f, 0x73, 0x65, - 0x49, 0x74, 0x65, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x68, 0x69, 0x70, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x04, 0x43, 0x68, 0x69, 0x70, 0x22, 0xa3, 0x01, 0x0a, 0x12, 0x4e, 0x6f, 0x74, - 0x69, 0x66, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x4d, 0x6f, 0x6f, 0x64, 0x12, - 0x18, 0x0a, 0x07, 0x41, 0x6c, 0x6c, 0x4d, 0x6f, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x07, 0x41, 0x6c, 0x6c, 0x4d, 0x6f, 0x6f, 0x64, 0x12, 0x3a, 0x0a, 0x04, 0x4d, 0x6f, 0x6f, - 0x64, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, - 0x61, 0x6c, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, - 0x6d, 0x4d, 0x6f, 0x6f, 0x64, 0x2e, 0x4d, 0x6f, 0x6f, 0x64, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x04, 0x4d, 0x6f, 0x6f, 0x64, 0x1a, 0x37, 0x0a, 0x09, 0x4d, 0x6f, 0x6f, 0x64, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x74, - 0x0a, 0x0a, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x10, 0x0a, 0x03, - 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x55, 0x69, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x04, 0x46, 0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0x14, - 0x0a, 0x05, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x22, 0x7c, 0x0a, 0x0c, 0x52, 0x6f, 0x6f, 0x6d, 0x4f, 0x70, 0x70, 0x6f, - 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x03, 0x55, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x61, - 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x61, 0x63, 0x65, 0x12, 0x16, - 0x0a, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, - 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x4c, 0x61, 0x73, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x4c, 0x61, 0x73, 0x74, 0x54, 0x69, - 0x6d, 0x65, 0x22, 0x23, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, - 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x03, 0x55, 0x69, 0x64, 0x22, 0xd9, 0x04, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x50, + 0x3a, 0x02, 0x38, 0x01, 0x22, 0x74, 0x0a, 0x0a, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x6f, + 0x6f, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x03, 0x55, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x61, 0x63, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x41, 0x76, + 0x61, 0x74, 0x61, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x05, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x22, 0x7c, 0x0a, 0x0c, 0x52, 0x6f, + 0x6f, 0x6d, 0x4f, 0x70, 0x70, 0x6f, 0x6e, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x55, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, + 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x4e, 0x61, 0x6d, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x46, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, + 0x46, 0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0x1a, 0x0a, 0x08, + 0x4c, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x4c, 0x61, 0x73, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x23, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x55, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x55, 0x69, 0x64, 0x12, 0x12, 0x0a, - 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x04, 0x46, 0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0x43, 0x0a, - 0x08, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x27, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x50, 0x6c, - 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x72, - 0x6f, 0x6f, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, - 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x05, 0x49, 0x74, - 0x65, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x74, 0x75, 0x74, 0x6f, - 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, - 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, - 0x0a, 0x07, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x07, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x04, 0x66, 0x6c, 0x69, 0x70, - 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, - 0x6f, 0x2e, 0x46, 0x6c, 0x69, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x04, 0x66, 0x6c, 0x69, - 0x70, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x68, 0x69, 0x70, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x04, 0x43, 0x68, 0x69, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x50, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x50, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x1a, - 0x3b, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, - 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, - 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x4c, 0x0a, 0x0a, - 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x28, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x75, - 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x37, 0x0a, 0x09, 0x46, 0x6c, - 0x69, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x22, 0x21, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, - 0x6f, 0x6d, 0x46, 0x6c, 0x69, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x73, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, - 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x46, 0x6c, 0x69, 0x70, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, - 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, - 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, - 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x4d, 0x73, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x43, 0x61, 0x72, 0x64, 0x49, 0x64, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x43, 0x61, 0x72, 0x64, 0x49, 0x64, 0x22, 0x17, 0x0a, 0x15, 0x52, - 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x46, 0x6c, 0x69, 0x70, 0x52, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x22, 0x51, 0x0a, 0x15, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, - 0x6f, 0x6f, 0x6d, 0x46, 0x6c, 0x69, 0x70, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x26, 0x0a, - 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, - 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, - 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x25, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, 0x6c, - 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, - 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x22, 0xe9, - 0x01, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x47, 0x61, - 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, - 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, - 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, - 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x3a, 0x0a, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x55, 0x69, 0x64, 0x22, 0xd9, 0x04, + 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, + 0x55, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x61, 0x63, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x41, + 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x41, 0x76, 0x61, + 0x74, 0x61, 0x72, 0x12, 0x43, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x18, + 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, + 0x2e, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, + 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, + 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x47, 0x61, 0x6d, 0x65, + 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x47, 0x61, 0x6d, 0x65, 0x49, 0x64, + 0x12, 0x3a, 0x0a, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x50, 0x6c, - 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x1a, 0x4c, 0x0a, 0x0a, - 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, - 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x28, 0x0a, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x75, - 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x39, 0x0a, 0x13, 0x52, 0x65, - 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, - 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, - 0x64, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x04, 0x54, 0x79, 0x70, 0x65, 0x22, 0x4f, 0x0a, 0x13, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, - 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x12, 0x26, 0x0a, 0x04, - 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, - 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, - 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x99, 0x01, 0x0a, 0x12, 0x52, 0x65, 0x71, 0x50, 0x6c, - 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x46, 0x0a, - 0x08, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x2a, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x71, 0x50, 0x6c, - 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x2e, 0x50, 0x6c, - 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x50, 0x6c, 0x61, - 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, + 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x73, + 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x16, 0x0a, 0x06, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x64, 0x65, 0x66, 0x65, 0x6e, 0x73, 0x65, 0x12, 0x37, + 0x0a, 0x04, 0x66, 0x6c, 0x69, 0x70, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, + 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x46, 0x6c, 0x69, 0x70, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x04, 0x66, 0x6c, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x43, 0x68, 0x69, 0x70, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x43, 0x68, 0x69, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x50, + 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x50, 0x65, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0x4e, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, - 0x6d, 0x53, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, + 0x38, 0x01, 0x1a, 0x4c, 0x0a, 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x28, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x49, 0x74, 0x65, + 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, + 0x1a, 0x37, 0x0a, 0x09, 0x46, 0x6c, 0x69, 0x70, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x21, 0x0a, 0x0f, 0x52, 0x65, 0x71, + 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x46, 0x6c, 0x69, 0x70, 0x12, 0x0e, 0x0a, 0x02, + 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x73, 0x0a, 0x0f, + 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x46, 0x6c, 0x69, 0x70, 0x12, + 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, + 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, + 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x43, 0x61, 0x72, + 0x64, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x43, 0x61, 0x72, 0x64, 0x49, + 0x64, 0x22, 0x17, 0x0a, 0x15, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, + 0x46, 0x6c, 0x69, 0x70, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x51, 0x0a, 0x15, 0x52, 0x65, + 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x46, 0x6c, 0x69, 0x70, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, + 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, + 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x25, 0x0a, + 0x0f, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, + 0x54, 0x79, 0x70, 0x65, 0x22, 0xe9, 0x01, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, + 0x72, 0x6f, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, - 0x73, 0x67, 0x22, 0x29, 0x0a, 0x17, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, - 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x0e, 0x0a, - 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x53, 0x0a, - 0x17, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x6c, 0x65, - 0x63, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, - 0x73, 0x67, 0x22, 0x11, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, - 0x6d, 0x4c, 0x6f, 0x73, 0x65, 0x22, 0x4b, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, - 0x72, 0x6f, 0x6f, 0x6d, 0x4c, 0x6f, 0x73, 0x65, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, - 0x73, 0x67, 0x22, 0x11, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, - 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x22, 0x4b, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, - 0x72, 0x6f, 0x6f, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, - 0x73, 0x67, 0x22, 0x11, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, - 0x6d, 0x52, 0x65, 0x73, 0x74, 0x22, 0x4b, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, - 0x72, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, - 0x73, 0x67, 0x22, 0x11, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, - 0x6d, 0x44, 0x72, 0x61, 0x77, 0x22, 0x5b, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, - 0x72, 0x6f, 0x6f, 0x6d, 0x44, 0x72, 0x61, 0x77, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, - 0x73, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, - 0x49, 0x64, 0x22, 0x23, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, - 0x6d, 0x43, 0x68, 0x69, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x03, 0x4e, 0x75, 0x6d, 0x22, 0x4b, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x50, 0x6c, - 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x43, 0x68, 0x69, 0x70, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, - 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, - 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, - 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x4d, 0x73, 0x67, 0x22, 0x24, 0x0a, 0x12, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, - 0x6f, 0x6f, 0x6d, 0x42, 0x75, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x4e, 0x0a, 0x12, 0x52, 0x65, - 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x42, 0x75, 0x79, 0x49, 0x74, 0x65, 0x6d, - 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, - 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, - 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x13, 0x0a, 0x11, 0x52, 0x65, - 0x71, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x22, - 0x97, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, - 0x61, 0x73, 0x75, 0x72, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, - 0x04, 0x53, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x74, 0x61, - 0x72, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x68, 0x69, 0x66, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x05, 0x53, 0x68, 0x69, 0x66, 0x74, 0x12, 0x2a, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, - 0x2e, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x4c, - 0x69, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x69, 0x73, 0x74, 0x32, 0x18, 0x05, 0x20, 0x03, - 0x28, 0x05, 0x52, 0x05, 0x4c, 0x69, 0x73, 0x74, 0x32, 0x22, 0xa6, 0x01, 0x0a, 0x0c, 0x54, 0x72, - 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x12, 0x12, 0x0a, 0x04, - 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x46, 0x61, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, - 0x46, 0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x41, 0x76, 0x61, 0x74, 0x61, 0x72, 0x12, 0x10, 0x0a, 0x03, - 0x55, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x55, 0x69, 0x64, 0x12, 0x16, - 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x69, 0x63, 0x6b, 0x4e, 0x61, - 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4e, 0x69, 0x63, 0x6b, 0x4e, 0x61, - 0x6d, 0x65, 0x22, 0x5a, 0x0a, 0x16, 0x52, 0x65, 0x71, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, - 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x04, - 0x4c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x74, 0x75, 0x74, - 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x69, 0x73, 0x74, - 0x32, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x4c, 0x69, 0x73, 0x74, 0x32, 0x22, 0x52, - 0x0a, 0x16, 0x52, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, 0x61, 0x73, - 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, - 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, - 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, - 0x73, 0x67, 0x22, 0x16, 0x0a, 0x14, 0x52, 0x65, 0x71, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, - 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x45, 0x6e, 0x64, 0x22, 0x50, 0x0a, 0x14, 0x52, 0x65, - 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x45, - 0x6e, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, + 0x73, 0x67, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3a, 0x0a, 0x05, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x18, + 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, + 0x2e, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, + 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x05, 0x49, 0x74, 0x65, + 0x6d, 0x73, 0x1a, 0x4c, 0x0a, 0x0a, 0x49, 0x74, 0x65, 0x6d, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x28, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x49, 0x74, 0x65, + 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, + 0x22, 0x39, 0x0a, 0x13, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x22, 0x4f, 0x0a, 0x13, 0x52, + 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x61, + 0x63, 0x74, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, - 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x29, 0x0a, 0x15, - 0x52, 0x65, 0x71, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, - 0x65, 0x46, 0x69, 0x6c, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x22, 0x51, 0x0a, 0x15, 0x52, 0x65, 0x73, 0x46, 0x72, - 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x46, 0x69, 0x6c, 0x70, + 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x99, 0x01, 0x0a, + 0x12, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x52, + 0x6f, 0x6f, 0x6d, 0x12, 0x46, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, + 0x2e, 0x52, 0x65, 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x52, + 0x6f, 0x6f, 0x6d, 0x2e, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x52, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x1a, 0x3b, 0x0a, 0x0d, 0x50, + 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x4e, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x50, + 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x74, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x26, + 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, + 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x29, 0x0a, 0x17, 0x52, 0x65, 0x71, 0x50, + 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x02, 0x49, 0x64, 0x22, 0x53, 0x0a, 0x17, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, + 0x6f, 0x6d, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x26, + 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, + 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x11, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, + 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x4c, 0x6f, 0x73, 0x65, 0x22, 0x4b, 0x0a, 0x0f, 0x52, + 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x4c, 0x6f, 0x73, 0x65, 0x12, 0x26, + 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, + 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x11, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, + 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x22, 0x4b, 0x0a, 0x0f, 0x52, + 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x57, 0x6f, 0x72, 0x6b, 0x12, 0x26, + 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, + 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x11, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, + 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x74, 0x22, 0x4b, 0x0a, 0x0f, 0x52, + 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x52, 0x65, 0x73, 0x74, 0x12, 0x26, + 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, + 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x11, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, + 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x44, 0x72, 0x61, 0x77, 0x22, 0x5b, 0x0a, 0x0f, 0x52, + 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x44, 0x72, 0x61, 0x77, 0x12, 0x26, + 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, + 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, 0x22, 0x23, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x50, + 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x43, 0x68, 0x69, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x4e, + 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x4e, 0x75, 0x6d, 0x22, 0x4b, 0x0a, + 0x0f, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x43, 0x68, 0x69, 0x70, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x2b, 0x0a, 0x15, 0x52, 0x65, - 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x53, - 0x74, 0x61, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x74, 0x61, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x04, 0x53, 0x74, 0x61, 0x72, 0x22, 0x37, 0x0a, 0x0b, 0x52, 0x65, 0x71, 0x4b, 0x61, - 0x66, 0x6b, 0x61, 0x4c, 0x6f, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, - 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, - 0x22, 0x32, 0x0a, 0x08, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, - 0x46, 0x75, 0x6e, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x46, 0x75, 0x6e, 0x63, - 0x12, 0x12, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, - 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x32, 0x0a, 0x08, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, - 0x12, 0x12, 0x0a, 0x04, 0x46, 0x75, 0x6e, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x46, 0x75, 0x6e, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0c, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x20, 0x0a, 0x0c, 0x52, 0x65, 0x71, 0x41, - 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x55, 0x69, 0x64, 0x22, 0x0f, 0x0a, 0x0d, 0x52, 0x65, - 0x71, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x2a, 0xdf, 0x07, 0x0a, 0x0e, - 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x50, 0x4f, 0x50, 0x5f, 0x4c, 0x41, 0x42, 0x45, 0x4c, 0x12, 0x0c, - 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, - 0x50, 0x69, 0x67, 0x67, 0x79, 0x42, 0x61, 0x6e, 0x6b, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, - 0x68, 0x61, 0x72, 0x67, 0x65, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x6e, 0x64, 0x6c, 0x65, - 0x73, 0x73, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x4c, 0x65, 0x76, 0x55, 0x70, 0x52, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x48, 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x43, - 0x68, 0x65, 0x73, 0x73, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x48, 0x61, 0x6e, 0x64, 0x62, 0x6f, - 0x6f, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x72, - 0x64, 0x65, 0x72, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x07, 0x12, 0x10, 0x0a, 0x0c, 0x44, - 0x65, 0x63, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x73, 0x74, 0x10, 0x08, 0x12, 0x0f, 0x0a, - 0x0b, 0x44, 0x65, 0x63, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x41, 0x64, 0x64, 0x10, 0x09, 0x12, 0x13, - 0x0a, 0x0f, 0x42, 0x75, 0x79, 0x43, 0x68, 0x65, 0x73, 0x73, 0x42, 0x61, 0x67, 0x47, 0x72, 0x69, - 0x64, 0x10, 0x0a, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x68, 0x65, 0x73, 0x73, 0x45, 0x78, 0x10, 0x0b, - 0x12, 0x15, 0x0a, 0x11, 0x43, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x52, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x0c, 0x12, 0x10, 0x0a, 0x0c, 0x45, 0x78, 0x53, 0x74, 0x61, - 0x72, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x0d, 0x12, 0x14, 0x0a, 0x10, 0x41, 0x6c, 0x6c, - 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x0e, 0x12, - 0x0f, 0x0a, 0x0b, 0x47, 0x75, 0x69, 0x64, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x0f, - 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x54, 0x61, 0x73, 0x6b, 0x52, 0x65, 0x77, - 0x61, 0x72, 0x64, 0x10, 0x10, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x57, 0x65, - 0x65, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x11, 0x12, 0x0d, 0x0a, 0x09, 0x42, 0x75, - 0x79, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x10, 0x12, 0x12, 0x19, 0x0a, 0x15, 0x53, 0x65, 0x76, - 0x65, 0x6e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x4c, 0x61, 0x62, - 0x65, 0x6c, 0x10, 0x13, 0x12, 0x14, 0x0a, 0x10, 0x4d, 0x6f, 0x6e, 0x74, 0x68, 0x4c, 0x6f, 0x67, - 0x69, 0x6e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x14, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x61, - 0x73, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, - 0x15, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x53, 0x65, 0x6e, 0x63, 0x65, 0x52, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x16, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x61, 0x69, 0x6c, 0x52, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x17, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x72, 0x65, 0x65, 0x53, - 0x68, 0x6f, 0x70, 0x10, 0x18, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x68, 0x65, 0x73, 0x73, 0x53, 0x68, - 0x6f, 0x70, 0x10, 0x19, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x65, 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, - 0x68, 0x65, 0x73, 0x73, 0x53, 0x68, 0x6f, 0x70, 0x10, 0x1a, 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x6e, - 0x64, 0x6c, 0x65, 0x73, 0x73, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x1b, 0x12, 0x13, 0x0a, - 0x0f, 0x50, 0x69, 0x67, 0x67, 0x79, 0x42, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, - 0x10, 0x1c, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x68, 0x61, 0x6d, 0x70, 0x73, 0x68, 0x69, 0x70, 0x52, - 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x1d, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x69, 0x6d, 0x69, 0x74, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x1e, 0x12, 0x17, 0x0a, - 0x13, 0x43, 0x68, 0x61, 0x6d, 0x70, 0x73, 0x68, 0x69, 0x70, 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x10, 0x1f, 0x12, 0x0a, 0x0a, 0x06, 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, - 0x10, 0x20, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x4c, 0x69, 0x6d, 0x69, - 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x21, 0x12, 0x0e, 0x0a, 0x0a, 0x4d, 0x69, 0x6e, 0x69, - 0x6e, 0x67, 0x54, 0x61, 0x6b, 0x65, 0x10, 0x22, 0x12, 0x10, 0x0a, 0x0c, 0x4d, 0x69, 0x6e, 0x69, - 0x6e, 0x67, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x23, 0x12, 0x0e, 0x0a, 0x0a, 0x47, 0x75, - 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x10, 0x24, 0x12, 0x14, 0x0a, 0x10, 0x47, 0x75, - 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x25, - 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x61, 0x63, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x26, - 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, - 0x10, 0x27, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x44, 0x72, - 0x61, 0x77, 0x10, 0x28, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, - 0x43, 0x68, 0x69, 0x70, 0x10, 0x29, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, - 0x6f, 0x6d, 0x46, 0x6c, 0x69, 0x70, 0x10, 0x2a, 0x12, 0x16, 0x0a, 0x12, 0x46, 0x72, 0x69, 0x65, - 0x6e, 0x64, 0x74, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x46, 0x69, 0x6c, 0x70, 0x10, 0x2b, - 0x12, 0x15, 0x0a, 0x11, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x74, 0x72, 0x65, 0x61, 0x73, 0x75, - 0x72, 0x65, 0x45, 0x6e, 0x64, 0x10, 0x2c, 0x12, 0x06, 0x0a, 0x02, 0x47, 0x4d, 0x10, 0x2d, 0x12, - 0x12, 0x0a, 0x0e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x74, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, - 0x65, 0x10, 0x2e, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x61, 0x72, 0x64, 0x48, 0x61, 0x6e, 0x64, 0x62, - 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x2f, 0x12, 0x17, 0x0a, 0x13, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x65, 0x73, 0x74, 0x52, 0x61, - 0x69, 0x6e, 0x10, 0x30, 0x12, 0x11, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x45, 0x6e, 0x65, 0x72, 0x67, - 0x79, 0x42, 0x79, 0x41, 0x44, 0x10, 0x31, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x6f, 0x75, 0x72, 0x63, - 0x65, 0x43, 0x68, 0x65, 0x73, 0x74, 0x10, 0x32, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x79, - 0x72, 0x6f, 0x6f, 0x6d, 0x42, 0x75, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x10, 0x33, 0x2a, 0x42, 0x0a, - 0x0b, 0x48, 0x41, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, 0x07, 0x0a, 0x03, - 0x41, 0x44, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x4f, 0x4d, 0x50, 0x4f, 0x53, 0x45, - 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x42, 0x55, 0x59, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x53, - 0x45, 0x4c, 0x4c, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x10, - 0x04, 0x2a, 0x21, 0x0a, 0x08, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x12, 0x08, 0x0a, - 0x04, 0x46, 0x41, 0x49, 0x4c, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, - 0x53, 0x53, 0x10, 0x01, 0x2a, 0x2e, 0x0a, 0x09, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x54, 0x59, 0x50, - 0x45, 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x4e, 0x45, 0x52, 0x47, 0x59, 0x10, 0x00, 0x12, 0x08, 0x0a, - 0x04, 0x53, 0x54, 0x41, 0x52, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x49, 0x41, 0x4d, 0x4f, - 0x4e, 0x44, 0x10, 0x02, 0x42, 0x08, 0x5a, 0x06, 0x2e, 0x2e, 0x2f, 0x6d, 0x73, 0x67, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x24, 0x0a, 0x12, 0x52, 0x65, + 0x71, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x42, 0x75, 0x79, 0x49, 0x74, 0x65, 0x6d, + 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x49, 0x64, + 0x22, 0x4e, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x42, + 0x75, 0x79, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, + 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, + 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, + 0x22, 0x13, 0x0a, 0x11, 0x52, 0x65, 0x71, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, + 0x61, 0x73, 0x75, 0x72, 0x65, 0x22, 0x97, 0x01, 0x0a, 0x11, 0x52, 0x65, 0x73, 0x46, 0x72, 0x69, + 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x74, 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x04, 0x53, 0x74, 0x61, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x68, 0x69, 0x66, 0x74, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x53, 0x68, 0x69, 0x66, 0x74, 0x12, 0x2a, 0x0a, + 0x04, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x74, 0x75, + 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x4c, 0x69, 0x73, + 0x74, 0x32, 0x18, 0x05, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x4c, 0x69, 0x73, 0x74, 0x32, 0x22, + 0xa6, 0x01, 0x0a, 0x0c, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x10, 0x0a, 0x03, 0x50, 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, + 0x6f, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x61, 0x63, 0x65, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x46, 0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x41, 0x76, + 0x61, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x41, 0x76, 0x61, 0x74, + 0x61, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x55, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, + 0x03, 0x55, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1a, 0x0a, 0x08, + 0x4e, 0x69, 0x63, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x4e, 0x69, 0x63, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x5a, 0x0a, 0x16, 0x52, 0x65, 0x71, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, + 0x72, 0x74, 0x12, 0x2a, 0x0a, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x16, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x54, 0x72, 0x65, 0x61, + 0x73, 0x75, 0x72, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x14, + 0x0a, 0x05, 0x4c, 0x69, 0x73, 0x74, 0x32, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x05, 0x4c, + 0x69, 0x73, 0x74, 0x32, 0x22, 0x52, 0x0a, 0x16, 0x52, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, + 0x64, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x26, + 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, + 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, + 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, 0x22, 0x16, 0x0a, 0x14, 0x52, 0x65, 0x71, 0x46, + 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x45, 0x6e, 0x64, + 0x22, 0x50, 0x0a, 0x14, 0x52, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, + 0x61, 0x73, 0x75, 0x72, 0x65, 0x45, 0x6e, 0x64, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, + 0x6c, 0x2e, 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, + 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, + 0x73, 0x67, 0x22, 0x29, 0x0a, 0x15, 0x52, 0x65, 0x71, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, + 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x46, 0x69, 0x6c, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x50, + 0x6f, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x50, 0x6f, 0x73, 0x22, 0x51, 0x0a, + 0x15, 0x52, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, 0x61, 0x73, 0x75, + 0x72, 0x65, 0x46, 0x69, 0x6c, 0x70, 0x12, 0x26, 0x0a, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x0e, 0x32, 0x12, 0x2e, 0x74, 0x75, 0x74, 0x6f, 0x72, 0x69, 0x61, 0x6c, 0x2e, + 0x52, 0x45, 0x53, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x52, 0x04, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x10, + 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x4d, 0x73, 0x67, + 0x22, 0x2b, 0x0a, 0x15, 0x52, 0x65, 0x73, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x72, 0x65, + 0x61, 0x73, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x53, 0x74, 0x61, + 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x53, 0x74, 0x61, 0x72, 0x22, 0x37, 0x0a, + 0x0b, 0x52, 0x65, 0x71, 0x4b, 0x61, 0x66, 0x6b, 0x61, 0x4c, 0x6f, 0x67, 0x12, 0x14, 0x0a, 0x05, + 0x45, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x22, 0x32, 0x0a, 0x08, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, + 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x75, 0x6e, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x04, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x32, 0x0a, 0x08, 0x41, 0x64, + 0x6d, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x46, 0x75, 0x6e, 0x63, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x46, 0x75, 0x6e, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x49, 0x6e, + 0x66, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x20, + 0x0a, 0x0c, 0x52, 0x65, 0x71, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, + 0x0a, 0x03, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x03, 0x55, 0x69, 0x64, + 0x22, 0x0f, 0x0a, 0x0d, 0x52, 0x65, 0x71, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x6e, 0x66, + 0x6f, 0x2a, 0xdf, 0x07, 0x0a, 0x0e, 0x49, 0x54, 0x45, 0x4d, 0x5f, 0x50, 0x4f, 0x50, 0x5f, 0x4c, + 0x41, 0x42, 0x45, 0x4c, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, + 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x50, 0x69, 0x67, 0x67, 0x79, 0x42, 0x61, 0x6e, 0x6b, 0x10, + 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x68, 0x61, 0x72, 0x67, 0x65, 0x10, 0x02, 0x12, 0x0b, 0x0a, + 0x07, 0x45, 0x6e, 0x64, 0x6c, 0x65, 0x73, 0x73, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x4c, 0x65, + 0x76, 0x55, 0x70, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x48, + 0x61, 0x6e, 0x64, 0x6c, 0x65, 0x43, 0x68, 0x65, 0x73, 0x73, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, + 0x48, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x06, + 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x72, 0x64, 0x65, 0x72, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, + 0x07, 0x12, 0x10, 0x0a, 0x0c, 0x44, 0x65, 0x63, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x73, + 0x74, 0x10, 0x08, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x65, 0x63, 0x6f, 0x72, 0x61, 0x74, 0x65, 0x41, + 0x64, 0x64, 0x10, 0x09, 0x12, 0x13, 0x0a, 0x0f, 0x42, 0x75, 0x79, 0x43, 0x68, 0x65, 0x73, 0x73, + 0x42, 0x61, 0x67, 0x47, 0x72, 0x69, 0x64, 0x10, 0x0a, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x68, 0x65, + 0x73, 0x73, 0x45, 0x78, 0x10, 0x0b, 0x12, 0x15, 0x0a, 0x11, 0x43, 0x61, 0x72, 0x64, 0x43, 0x6f, + 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x0c, 0x12, 0x10, 0x0a, + 0x0c, 0x45, 0x78, 0x53, 0x74, 0x61, 0x72, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x0d, 0x12, + 0x14, 0x0a, 0x10, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6c, 0x6c, 0x65, 0x63, 0x74, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x10, 0x0e, 0x12, 0x0f, 0x0a, 0x0b, 0x47, 0x75, 0x69, 0x64, 0x65, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x10, 0x0f, 0x12, 0x13, 0x0a, 0x0f, 0x44, 0x61, 0x69, 0x6c, 0x79, 0x54, + 0x61, 0x73, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x10, 0x12, 0x13, 0x0a, 0x0f, 0x44, + 0x61, 0x69, 0x6c, 0x79, 0x57, 0x65, 0x65, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x11, + 0x12, 0x0d, 0x0a, 0x09, 0x42, 0x75, 0x79, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x10, 0x12, 0x12, + 0x19, 0x0a, 0x15, 0x53, 0x65, 0x76, 0x65, 0x6e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x10, 0x13, 0x12, 0x14, 0x0a, 0x10, 0x4d, 0x6f, + 0x6e, 0x74, 0x68, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x14, + 0x12, 0x15, 0x0a, 0x11, 0x46, 0x61, 0x73, 0x74, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x65, 0x52, + 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x15, 0x12, 0x14, 0x0a, 0x10, 0x4c, 0x69, 0x6d, 0x69, 0x74, + 0x53, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x16, 0x12, 0x0e, 0x0a, + 0x0a, 0x4d, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x17, 0x12, 0x0c, 0x0a, + 0x08, 0x46, 0x72, 0x65, 0x65, 0x53, 0x68, 0x6f, 0x70, 0x10, 0x18, 0x12, 0x0d, 0x0a, 0x09, 0x43, + 0x68, 0x65, 0x73, 0x73, 0x53, 0x68, 0x6f, 0x70, 0x10, 0x19, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x65, + 0x66, 0x72, 0x65, 0x73, 0x68, 0x43, 0x68, 0x65, 0x73, 0x73, 0x53, 0x68, 0x6f, 0x70, 0x10, 0x1a, + 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x6e, 0x64, 0x6c, 0x65, 0x73, 0x73, 0x52, 0x65, 0x77, 0x61, 0x72, + 0x64, 0x10, 0x1b, 0x12, 0x13, 0x0a, 0x0f, 0x50, 0x69, 0x67, 0x67, 0x79, 0x42, 0x61, 0x6e, 0x6b, + 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x1c, 0x12, 0x13, 0x0a, 0x0f, 0x43, 0x68, 0x61, 0x6d, + 0x70, 0x73, 0x68, 0x69, 0x70, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x1d, 0x12, 0x14, 0x0a, + 0x10, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, + 0x64, 0x10, 0x1e, 0x12, 0x17, 0x0a, 0x13, 0x43, 0x68, 0x61, 0x6d, 0x70, 0x73, 0x68, 0x69, 0x70, + 0x52, 0x61, 0x6e, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x1f, 0x12, 0x0a, 0x0a, 0x06, + 0x69, 0x6e, 0x76, 0x69, 0x74, 0x65, 0x10, 0x20, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x65, 0x6c, 0x65, + 0x63, 0x74, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x10, 0x21, 0x12, 0x0e, + 0x0a, 0x0a, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x54, 0x61, 0x6b, 0x65, 0x10, 0x22, 0x12, 0x10, + 0x0a, 0x0c, 0x4d, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, 0x23, + 0x12, 0x0e, 0x0a, 0x0a, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x10, 0x24, + 0x12, 0x14, 0x0a, 0x10, 0x47, 0x75, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x10, 0x25, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x61, 0x63, 0x65, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x10, 0x26, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, + 0x6f, 0x6d, 0x47, 0x61, 0x6d, 0x65, 0x10, 0x27, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x6c, 0x61, 0x79, + 0x72, 0x6f, 0x6f, 0x6d, 0x44, 0x72, 0x61, 0x77, 0x10, 0x28, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x6c, + 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x43, 0x68, 0x69, 0x70, 0x10, 0x29, 0x12, 0x10, 0x0a, 0x0c, + 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x46, 0x6c, 0x69, 0x70, 0x10, 0x2a, 0x12, 0x16, + 0x0a, 0x12, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x74, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, + 0x46, 0x69, 0x6c, 0x70, 0x10, 0x2b, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, + 0x74, 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x45, 0x6e, 0x64, 0x10, 0x2c, 0x12, 0x06, 0x0a, + 0x02, 0x47, 0x4d, 0x10, 0x2d, 0x12, 0x12, 0x0a, 0x0e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x74, + 0x72, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x10, 0x2e, 0x12, 0x16, 0x0a, 0x12, 0x43, 0x61, 0x72, + 0x64, 0x48, 0x61, 0x6e, 0x64, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x10, + 0x2f, 0x12, 0x17, 0x0a, 0x13, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43, + 0x68, 0x65, 0x73, 0x74, 0x52, 0x61, 0x69, 0x6e, 0x10, 0x30, 0x12, 0x11, 0x0a, 0x0d, 0x47, 0x65, + 0x74, 0x45, 0x6e, 0x65, 0x72, 0x67, 0x79, 0x42, 0x79, 0x41, 0x44, 0x10, 0x31, 0x12, 0x0f, 0x0a, + 0x0b, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x43, 0x68, 0x65, 0x73, 0x74, 0x10, 0x32, 0x12, 0x13, + 0x0a, 0x0f, 0x50, 0x6c, 0x61, 0x79, 0x72, 0x6f, 0x6f, 0x6d, 0x42, 0x75, 0x79, 0x49, 0x74, 0x65, + 0x6d, 0x10, 0x33, 0x2a, 0x42, 0x0a, 0x0b, 0x48, 0x41, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x54, 0x59, + 0x50, 0x45, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x44, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, + 0x4f, 0x4d, 0x50, 0x4f, 0x53, 0x45, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x42, 0x55, 0x59, 0x10, + 0x02, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x45, 0x4c, 0x4c, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x52, + 0x45, 0x4d, 0x4f, 0x56, 0x45, 0x10, 0x04, 0x2a, 0x21, 0x0a, 0x08, 0x52, 0x45, 0x53, 0x5f, 0x43, + 0x4f, 0x44, 0x45, 0x12, 0x08, 0x0a, 0x04, 0x46, 0x41, 0x49, 0x4c, 0x10, 0x00, 0x12, 0x0b, 0x0a, + 0x07, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x2a, 0x2e, 0x0a, 0x09, 0x49, 0x54, + 0x45, 0x4d, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x4e, 0x45, 0x52, 0x47, + 0x59, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x53, 0x54, 0x41, 0x52, 0x10, 0x01, 0x12, 0x0b, 0x0a, + 0x07, 0x44, 0x49, 0x41, 0x4d, 0x4f, 0x4e, 0x44, 0x10, 0x02, 0x42, 0x08, 0x5a, 0x06, 0x2e, 0x2e, + 0x2f, 0x6d, 0x73, 0x67, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -20747,7 +20843,7 @@ func file_docs_proto_Gameapi_proto_rawDescGZIP() []byte { } var file_docs_proto_Gameapi_proto_enumTypes = make([]protoimpl.EnumInfo, 4) -var file_docs_proto_Gameapi_proto_msgTypes = make([]protoimpl.MessageInfo, 380) +var file_docs_proto_Gameapi_proto_msgTypes = make([]protoimpl.MessageInfo, 382) var file_docs_proto_Gameapi_proto_goTypes = []any{ (ITEM_POP_LABEL)(0), // 0: tutorial.ITEM_POP_LABEL (HANDLE_TYPE)(0), // 1: tutorial.HANDLE_TYPE @@ -21011,152 +21107,154 @@ var file_docs_proto_Gameapi_proto_goTypes = []any{ (*ResGetInviteReward)(nil), // 259: tutorial.ResGetInviteReward (*ReqAutoAddInviteFriend)(nil), // 260: tutorial.ReqAutoAddInviteFriend (*ResAutoAddInviteFriend)(nil), // 261: tutorial.ResAutoAddInviteFriend - (*ReqMining)(nil), // 262: tutorial.ReqMining - (*ResMining)(nil), // 263: tutorial.ResMining - (*ReqMiningTake)(nil), // 264: tutorial.ReqMiningTake - (*ResMiningTake)(nil), // 265: tutorial.ResMiningTake - (*ReqMiningReward)(nil), // 266: tutorial.ReqMiningReward - (*ResMiningReward)(nil), // 267: tutorial.ResMiningReward - (*ResActRed)(nil), // 268: tutorial.ResActRed - (*NotifyActRed)(nil), // 269: tutorial.NotifyActRed - (*ActivityNotify)(nil), // 270: tutorial.ActivityNotify - (*ResItem)(nil), // 271: tutorial.ResItem - (*ItemNotify)(nil), // 272: tutorial.ItemNotify - (*ReqGuessColor)(nil), // 273: tutorial.ReqGuessColor - (*ResGuessColor)(nil), // 274: tutorial.ResGuessColor - (*Opponent)(nil), // 275: tutorial.opponent - (*ReqGuessColorTake)(nil), // 276: tutorial.ReqGuessColorTake - (*ResGuessColorTake)(nil), // 277: tutorial.ResGuessColorTake - (*ReqGuessColorReward)(nil), // 278: tutorial.ReqGuessColorReward - (*ResGuessColorReward)(nil), // 279: tutorial.ResGuessColorReward - (*ReqRace)(nil), // 280: tutorial.ReqRace - (*ResRace)(nil), // 281: tutorial.ResRace - (*Raceopponent)(nil), // 282: tutorial.raceopponent - (*ReqRaceStart)(nil), // 283: tutorial.ReqRaceStart - (*ResRaceStart)(nil), // 284: tutorial.ResRaceStart - (*ReqRaceReward)(nil), // 285: tutorial.ReqRaceReward - (*ResRaceReward)(nil), // 286: tutorial.ResRaceReward - (*ReqPlayroom)(nil), // 287: tutorial.ReqPlayroom - (*ResPlayroom)(nil), // 288: tutorial.ResPlayroom - (*ReqPlayroomWrokOutline)(nil), // 289: tutorial.ReqPlayroomWrokOutline - (*ResPlayroomWrokOutline)(nil), // 290: tutorial.ResPlayroomWrokOutline - (*NofiPlayroomStatus)(nil), // 291: tutorial.NofiPlayroomStatus - (*NotifyPlayroomWork)(nil), // 292: tutorial.NotifyPlayroomWork - (*NotifyPlayroomLose)(nil), // 293: tutorial.NotifyPlayroomLose - (*NotifyPlayroomMood)(nil), // 294: tutorial.NotifyPlayroomMood - (*FriendRoom)(nil), // 295: tutorial.FriendRoom - (*RoomOpponent)(nil), // 296: tutorial.RoomOpponent - (*ReqPlayroomInfo)(nil), // 297: tutorial.ReqPlayroomInfo - (*ResPlayroomInfo)(nil), // 298: tutorial.ResPlayroomInfo - (*ReqPlayroomFlip)(nil), // 299: tutorial.ReqPlayroomFlip - (*ResPlayroomFlip)(nil), // 300: tutorial.ResPlayroomFlip - (*ReqPlayroomFlipReward)(nil), // 301: tutorial.ReqPlayroomFlipReward - (*ResPlayroomFlipReward)(nil), // 302: tutorial.ResPlayroomFlipReward - (*ReqPlayroomGame)(nil), // 303: tutorial.ReqPlayroomGame - (*ResPlayroomGame)(nil), // 304: tutorial.ResPlayroomGame - (*ReqPlayroomInteract)(nil), // 305: tutorial.ReqPlayroomInteract - (*ResPlayroomInteract)(nil), // 306: tutorial.ResPlayroomInteract - (*ReqPlayroomSetRoom)(nil), // 307: tutorial.ReqPlayroomSetRoom - (*ResPlayroomSetRoom)(nil), // 308: tutorial.ResPlayroomSetRoom - (*ReqPlayroomSelectReward)(nil), // 309: tutorial.ReqPlayroomSelectReward - (*ResPlayroomSelectReward)(nil), // 310: tutorial.ResPlayroomSelectReward - (*ReqPlayroomLose)(nil), // 311: tutorial.ReqPlayroomLose - (*ResPlayroomLose)(nil), // 312: tutorial.ResPlayroomLose - (*ReqPlayroomWork)(nil), // 313: tutorial.ReqPlayroomWork - (*ResPlayroomWork)(nil), // 314: tutorial.ResPlayroomWork - (*ReqPlayroomRest)(nil), // 315: tutorial.ReqPlayroomRest - (*ResPlayroomRest)(nil), // 316: tutorial.ResPlayroomRest - (*ReqPlayroomDraw)(nil), // 317: tutorial.ReqPlayroomDraw - (*ResPlayroomDraw)(nil), // 318: tutorial.ResPlayroomDraw - (*ReqPlayroomChip)(nil), // 319: tutorial.ReqPlayroomChip - (*ResPlayroomChip)(nil), // 320: tutorial.ResPlayroomChip - (*ReqPlayroomBuyItem)(nil), // 321: tutorial.ReqPlayroomBuyItem - (*ResPlayroomBuyItem)(nil), // 322: tutorial.ResPlayroomBuyItem - (*ReqFriendTreasure)(nil), // 323: tutorial.ReqFriendTreasure - (*ResFriendTreasure)(nil), // 324: tutorial.ResFriendTreasure - (*TreasureInfo)(nil), // 325: tutorial.TreasureInfo - (*ReqFriendTreasureStart)(nil), // 326: tutorial.ReqFriendTreasureStart - (*ResFriendTreasureStart)(nil), // 327: tutorial.ResFriendTreasureStart - (*ReqFriendTreasureEnd)(nil), // 328: tutorial.ReqFriendTreasureEnd - (*ResFriendTreasureEnd)(nil), // 329: tutorial.ResFriendTreasureEnd - (*ReqFriendTreasureFilp)(nil), // 330: tutorial.ReqFriendTreasureFilp - (*ResFriendTreasureFilp)(nil), // 331: tutorial.ResFriendTreasureFilp - (*ResFriendTreasureStar)(nil), // 332: tutorial.ResFriendTreasureStar - (*ReqKafkaLog)(nil), // 333: tutorial.ReqKafkaLog - (*AdminReq)(nil), // 334: tutorial.AdminReq - (*AdminRes)(nil), // 335: tutorial.AdminRes - (*ReqAdminInfo)(nil), // 336: tutorial.ReqAdminInfo - (*ReqServerInfo)(nil), // 337: tutorial.ReqServerInfo - nil, // 338: tutorial.ResChessColorData.MChessColorDataEntry - nil, // 339: tutorial.UpdateBaseItemInfo.MUpdateItemEntry - nil, // 340: tutorial.ResPlayerChessData.MChessDataEntry - nil, // 341: tutorial.UpdatePlayerChessData.MChessDataEntry - nil, // 342: tutorial.ReqSeparateChess.MChessDataEntry - nil, // 343: tutorial.ReqGetChessFromBuff.MChessDataEntry - nil, // 344: tutorial.ReqChessEx.MChessDataEntry - nil, // 345: tutorial.ReqSourceChest.MChessDataEntry - nil, // 346: tutorial.ReqPlayroomOutline.MChessDataEntry - nil, // 347: tutorial.ReqPutChessInBag.MChessDataEntry - nil, // 348: tutorial.ReqTakeChessOutBag.MChessDataEntry - nil, // 349: tutorial.ReqRewardOrder.MChessDataEntry - nil, // 350: tutorial.ResCardInfo.AllCardEntry - nil, // 351: tutorial.ResCardInfo.HandbookEntry - nil, // 352: tutorial.ResGuildInfo.RewardEntry - nil, // 353: tutorial.ResDailyTask.WeekRewardEntry - nil, // 354: tutorial.ResDailyTask.DailyTaskEntry - nil, // 355: tutorial.ResLimitEvent.LimitEventListEntry - nil, // 356: tutorial.ResLimitEventProgress.ProgressRewardEntry - nil, // 357: tutorial.ResKv.KvEntry - nil, // 358: tutorial.ResRank.RankListEntry - nil, // 359: tutorial.ResMailList.MailListEntry - nil, // 360: tutorial.ResCharge.SpecialShopEntry - nil, // 361: tutorial.ResCharge.ChessShopEntry - nil, // 362: tutorial.ResCharge.GiftEntry - nil, // 363: tutorial.ReqBuyChessShop2.MChessDataEntry - nil, // 364: tutorial.ResEndless.EndlessListEntry - nil, // 365: tutorial.ResChampshipRank.RankListEntry - nil, // 366: tutorial.ResChampshipPreRank.RankListEntry - nil, // 367: tutorial.ResNotifyCard.CardEntry - nil, // 368: tutorial.ResNotifyCard.MasterEntry - nil, // 369: tutorial.ResNotifyCard.HandbookEntry - nil, // 370: tutorial.ResMining.MapEntry - nil, // 371: tutorial.ReqMiningTake.MapEntry - nil, // 372: tutorial.ResActRed.RedEntry - nil, // 373: tutorial.ResItem.ItemEntry - nil, // 374: tutorial.ItemNotify.ItemEntry - nil, // 375: tutorial.ReqGuessColorTake.MapEntry - nil, // 376: tutorial.ResPlayroom.PlayroomEntry - nil, // 377: tutorial.ResPlayroom.MoodEntry - nil, // 378: tutorial.NotifyPlayroomMood.MoodEntry - nil, // 379: tutorial.ResPlayroomInfo.PlayroomEntry - nil, // 380: tutorial.ResPlayroomInfo.ItemsEntry - nil, // 381: tutorial.ResPlayroomInfo.FlipEntry - nil, // 382: tutorial.ResPlayroomGame.ItemsEntry - nil, // 383: tutorial.ReqPlayroomSetRoom.PlayroomEntry + (*ReqAutoAddInviteFriend2)(nil), // 262: tutorial.ReqAutoAddInviteFriend2 + (*ResAutoAddInviteFriend2)(nil), // 263: tutorial.ResAutoAddInviteFriend2 + (*ReqMining)(nil), // 264: tutorial.ReqMining + (*ResMining)(nil), // 265: tutorial.ResMining + (*ReqMiningTake)(nil), // 266: tutorial.ReqMiningTake + (*ResMiningTake)(nil), // 267: tutorial.ResMiningTake + (*ReqMiningReward)(nil), // 268: tutorial.ReqMiningReward + (*ResMiningReward)(nil), // 269: tutorial.ResMiningReward + (*ResActRed)(nil), // 270: tutorial.ResActRed + (*NotifyActRed)(nil), // 271: tutorial.NotifyActRed + (*ActivityNotify)(nil), // 272: tutorial.ActivityNotify + (*ResItem)(nil), // 273: tutorial.ResItem + (*ItemNotify)(nil), // 274: tutorial.ItemNotify + (*ReqGuessColor)(nil), // 275: tutorial.ReqGuessColor + (*ResGuessColor)(nil), // 276: tutorial.ResGuessColor + (*Opponent)(nil), // 277: tutorial.opponent + (*ReqGuessColorTake)(nil), // 278: tutorial.ReqGuessColorTake + (*ResGuessColorTake)(nil), // 279: tutorial.ResGuessColorTake + (*ReqGuessColorReward)(nil), // 280: tutorial.ReqGuessColorReward + (*ResGuessColorReward)(nil), // 281: tutorial.ResGuessColorReward + (*ReqRace)(nil), // 282: tutorial.ReqRace + (*ResRace)(nil), // 283: tutorial.ResRace + (*Raceopponent)(nil), // 284: tutorial.raceopponent + (*ReqRaceStart)(nil), // 285: tutorial.ReqRaceStart + (*ResRaceStart)(nil), // 286: tutorial.ResRaceStart + (*ReqRaceReward)(nil), // 287: tutorial.ReqRaceReward + (*ResRaceReward)(nil), // 288: tutorial.ResRaceReward + (*ReqPlayroom)(nil), // 289: tutorial.ReqPlayroom + (*ResPlayroom)(nil), // 290: tutorial.ResPlayroom + (*ReqPlayroomWrokOutline)(nil), // 291: tutorial.ReqPlayroomWrokOutline + (*ResPlayroomWrokOutline)(nil), // 292: tutorial.ResPlayroomWrokOutline + (*NofiPlayroomStatus)(nil), // 293: tutorial.NofiPlayroomStatus + (*NotifyPlayroomWork)(nil), // 294: tutorial.NotifyPlayroomWork + (*NotifyPlayroomLose)(nil), // 295: tutorial.NotifyPlayroomLose + (*NotifyPlayroomMood)(nil), // 296: tutorial.NotifyPlayroomMood + (*FriendRoom)(nil), // 297: tutorial.FriendRoom + (*RoomOpponent)(nil), // 298: tutorial.RoomOpponent + (*ReqPlayroomInfo)(nil), // 299: tutorial.ReqPlayroomInfo + (*ResPlayroomInfo)(nil), // 300: tutorial.ResPlayroomInfo + (*ReqPlayroomFlip)(nil), // 301: tutorial.ReqPlayroomFlip + (*ResPlayroomFlip)(nil), // 302: tutorial.ResPlayroomFlip + (*ReqPlayroomFlipReward)(nil), // 303: tutorial.ReqPlayroomFlipReward + (*ResPlayroomFlipReward)(nil), // 304: tutorial.ResPlayroomFlipReward + (*ReqPlayroomGame)(nil), // 305: tutorial.ReqPlayroomGame + (*ResPlayroomGame)(nil), // 306: tutorial.ResPlayroomGame + (*ReqPlayroomInteract)(nil), // 307: tutorial.ReqPlayroomInteract + (*ResPlayroomInteract)(nil), // 308: tutorial.ResPlayroomInteract + (*ReqPlayroomSetRoom)(nil), // 309: tutorial.ReqPlayroomSetRoom + (*ResPlayroomSetRoom)(nil), // 310: tutorial.ResPlayroomSetRoom + (*ReqPlayroomSelectReward)(nil), // 311: tutorial.ReqPlayroomSelectReward + (*ResPlayroomSelectReward)(nil), // 312: tutorial.ResPlayroomSelectReward + (*ReqPlayroomLose)(nil), // 313: tutorial.ReqPlayroomLose + (*ResPlayroomLose)(nil), // 314: tutorial.ResPlayroomLose + (*ReqPlayroomWork)(nil), // 315: tutorial.ReqPlayroomWork + (*ResPlayroomWork)(nil), // 316: tutorial.ResPlayroomWork + (*ReqPlayroomRest)(nil), // 317: tutorial.ReqPlayroomRest + (*ResPlayroomRest)(nil), // 318: tutorial.ResPlayroomRest + (*ReqPlayroomDraw)(nil), // 319: tutorial.ReqPlayroomDraw + (*ResPlayroomDraw)(nil), // 320: tutorial.ResPlayroomDraw + (*ReqPlayroomChip)(nil), // 321: tutorial.ReqPlayroomChip + (*ResPlayroomChip)(nil), // 322: tutorial.ResPlayroomChip + (*ReqPlayroomBuyItem)(nil), // 323: tutorial.ReqPlayroomBuyItem + (*ResPlayroomBuyItem)(nil), // 324: tutorial.ResPlayroomBuyItem + (*ReqFriendTreasure)(nil), // 325: tutorial.ReqFriendTreasure + (*ResFriendTreasure)(nil), // 326: tutorial.ResFriendTreasure + (*TreasureInfo)(nil), // 327: tutorial.TreasureInfo + (*ReqFriendTreasureStart)(nil), // 328: tutorial.ReqFriendTreasureStart + (*ResFriendTreasureStart)(nil), // 329: tutorial.ResFriendTreasureStart + (*ReqFriendTreasureEnd)(nil), // 330: tutorial.ReqFriendTreasureEnd + (*ResFriendTreasureEnd)(nil), // 331: tutorial.ResFriendTreasureEnd + (*ReqFriendTreasureFilp)(nil), // 332: tutorial.ReqFriendTreasureFilp + (*ResFriendTreasureFilp)(nil), // 333: tutorial.ResFriendTreasureFilp + (*ResFriendTreasureStar)(nil), // 334: tutorial.ResFriendTreasureStar + (*ReqKafkaLog)(nil), // 335: tutorial.ReqKafkaLog + (*AdminReq)(nil), // 336: tutorial.AdminReq + (*AdminRes)(nil), // 337: tutorial.AdminRes + (*ReqAdminInfo)(nil), // 338: tutorial.ReqAdminInfo + (*ReqServerInfo)(nil), // 339: tutorial.ReqServerInfo + nil, // 340: tutorial.ResChessColorData.MChessColorDataEntry + nil, // 341: tutorial.UpdateBaseItemInfo.MUpdateItemEntry + nil, // 342: tutorial.ResPlayerChessData.MChessDataEntry + nil, // 343: tutorial.UpdatePlayerChessData.MChessDataEntry + nil, // 344: tutorial.ReqSeparateChess.MChessDataEntry + nil, // 345: tutorial.ReqGetChessFromBuff.MChessDataEntry + nil, // 346: tutorial.ReqChessEx.MChessDataEntry + nil, // 347: tutorial.ReqSourceChest.MChessDataEntry + nil, // 348: tutorial.ReqPlayroomOutline.MChessDataEntry + nil, // 349: tutorial.ReqPutChessInBag.MChessDataEntry + nil, // 350: tutorial.ReqTakeChessOutBag.MChessDataEntry + nil, // 351: tutorial.ReqRewardOrder.MChessDataEntry + nil, // 352: tutorial.ResCardInfo.AllCardEntry + nil, // 353: tutorial.ResCardInfo.HandbookEntry + nil, // 354: tutorial.ResGuildInfo.RewardEntry + nil, // 355: tutorial.ResDailyTask.WeekRewardEntry + nil, // 356: tutorial.ResDailyTask.DailyTaskEntry + nil, // 357: tutorial.ResLimitEvent.LimitEventListEntry + nil, // 358: tutorial.ResLimitEventProgress.ProgressRewardEntry + nil, // 359: tutorial.ResKv.KvEntry + nil, // 360: tutorial.ResRank.RankListEntry + nil, // 361: tutorial.ResMailList.MailListEntry + nil, // 362: tutorial.ResCharge.SpecialShopEntry + nil, // 363: tutorial.ResCharge.ChessShopEntry + nil, // 364: tutorial.ResCharge.GiftEntry + nil, // 365: tutorial.ReqBuyChessShop2.MChessDataEntry + nil, // 366: tutorial.ResEndless.EndlessListEntry + nil, // 367: tutorial.ResChampshipRank.RankListEntry + nil, // 368: tutorial.ResChampshipPreRank.RankListEntry + nil, // 369: tutorial.ResNotifyCard.CardEntry + nil, // 370: tutorial.ResNotifyCard.MasterEntry + nil, // 371: tutorial.ResNotifyCard.HandbookEntry + nil, // 372: tutorial.ResMining.MapEntry + nil, // 373: tutorial.ReqMiningTake.MapEntry + nil, // 374: tutorial.ResActRed.RedEntry + nil, // 375: tutorial.ResItem.ItemEntry + nil, // 376: tutorial.ItemNotify.ItemEntry + nil, // 377: tutorial.ReqGuessColorTake.MapEntry + nil, // 378: tutorial.ResPlayroom.PlayroomEntry + nil, // 379: tutorial.ResPlayroom.MoodEntry + nil, // 380: tutorial.NotifyPlayroomMood.MoodEntry + nil, // 381: tutorial.ResPlayroomInfo.PlayroomEntry + nil, // 382: tutorial.ResPlayroomInfo.ItemsEntry + nil, // 383: tutorial.ResPlayroomInfo.FlipEntry + nil, // 384: tutorial.ResPlayroomGame.ItemsEntry + nil, // 385: tutorial.ReqPlayroomSetRoom.PlayroomEntry } var file_docs_proto_Gameapi_proto_depIdxs = []int32{ - 338, // 0: tutorial.ResChessColorData.mChessColorData:type_name -> tutorial.ResChessColorData.MChessColorDataEntry - 339, // 1: tutorial.UpdateBaseItemInfo.mUpdateItem:type_name -> tutorial.UpdateBaseItemInfo.MUpdateItemEntry - 340, // 2: tutorial.ResPlayerChessData.mChessData:type_name -> tutorial.ResPlayerChessData.MChessDataEntry + 340, // 0: tutorial.ResChessColorData.mChessColorData:type_name -> tutorial.ResChessColorData.MChessColorDataEntry + 341, // 1: tutorial.UpdateBaseItemInfo.mUpdateItem:type_name -> tutorial.UpdateBaseItemInfo.MUpdateItemEntry + 342, // 2: tutorial.ResPlayerChessData.mChessData:type_name -> tutorial.ResPlayerChessData.MChessDataEntry 50, // 3: tutorial.ResPlayerChessInfo.ChessBag:type_name -> tutorial.ChessBag 1, // 4: tutorial.ChessHandle.type:type_name -> tutorial.HANDLE_TYPE - 341, // 5: tutorial.UpdatePlayerChessData.mChessData:type_name -> tutorial.UpdatePlayerChessData.MChessDataEntry + 343, // 5: tutorial.UpdatePlayerChessData.mChessData:type_name -> tutorial.UpdatePlayerChessData.MChessDataEntry 37, // 6: tutorial.UpdatePlayerChessData.mChessHandle:type_name -> tutorial.ChessHandle 2, // 7: tutorial.ResUpdatePlayerChessData.code:type_name -> tutorial.RES_CODE - 342, // 8: tutorial.ReqSeparateChess.mChessData:type_name -> tutorial.ReqSeparateChess.MChessDataEntry + 344, // 8: tutorial.ReqSeparateChess.mChessData:type_name -> tutorial.ReqSeparateChess.MChessDataEntry 2, // 9: tutorial.ResSeparateChess.code:type_name -> tutorial.RES_CODE - 343, // 10: tutorial.ReqGetChessFromBuff.mChessData:type_name -> tutorial.ReqGetChessFromBuff.MChessDataEntry + 345, // 10: tutorial.ReqGetChessFromBuff.mChessData:type_name -> tutorial.ReqGetChessFromBuff.MChessDataEntry 2, // 11: tutorial.ResGetChessFromBuff.code:type_name -> tutorial.RES_CODE - 344, // 12: tutorial.ReqChessEx.mChessData:type_name -> tutorial.ReqChessEx.MChessDataEntry + 346, // 12: tutorial.ReqChessEx.mChessData:type_name -> tutorial.ReqChessEx.MChessDataEntry 2, // 13: tutorial.ResChessEx.code:type_name -> tutorial.RES_CODE - 345, // 14: tutorial.ReqSourceChest.mChessData:type_name -> tutorial.ReqSourceChest.MChessDataEntry + 347, // 14: tutorial.ReqSourceChest.mChessData:type_name -> tutorial.ReqSourceChest.MChessDataEntry 2, // 15: tutorial.ResSourceChest.code:type_name -> tutorial.RES_CODE - 346, // 16: tutorial.ReqPlayroomOutline.mChessData:type_name -> tutorial.ReqPlayroomOutline.MChessDataEntry + 348, // 16: tutorial.ReqPlayroomOutline.mChessData:type_name -> tutorial.ReqPlayroomOutline.MChessDataEntry 2, // 17: tutorial.ResPlayroomOutline.code:type_name -> tutorial.RES_CODE 51, // 18: tutorial.ChessBag.ChessBagGrids:type_name -> tutorial.ChessBagGrid - 347, // 19: tutorial.ReqPutChessInBag.mChessData:type_name -> tutorial.ReqPutChessInBag.MChessDataEntry + 349, // 19: tutorial.ReqPutChessInBag.mChessData:type_name -> tutorial.ReqPutChessInBag.MChessDataEntry 2, // 20: tutorial.ResPutChessInBag.code:type_name -> tutorial.RES_CODE - 348, // 21: tutorial.ReqTakeChessOutBag.mChessData:type_name -> tutorial.ReqTakeChessOutBag.MChessDataEntry + 350, // 21: tutorial.ReqTakeChessOutBag.mChessData:type_name -> tutorial.ReqTakeChessOutBag.MChessDataEntry 2, // 22: tutorial.ResTakeChessOutBag.code:type_name -> tutorial.RES_CODE 2, // 23: tutorial.ResBuyChessBagGrid.code:type_name -> tutorial.RES_CODE 2, // 24: tutorial.ResSetEnergyMul.ResultCode:type_name -> tutorial.RES_CODE @@ -21168,15 +21266,15 @@ var file_docs_proto_Gameapi_proto_depIdxs = []int32{ 2, // 30: tutorial.ResGetEnergyByAD.Code:type_name -> tutorial.RES_CODE 76, // 31: tutorial.Handbook.Handbooks:type_name -> tutorial.HandbookInfo 2, // 32: tutorial.ResGetHandbookReward.Code:type_name -> tutorial.RES_CODE - 349, // 33: tutorial.ReqRewardOrder.mChessData:type_name -> tutorial.ReqRewardOrder.MChessDataEntry + 351, // 33: tutorial.ReqRewardOrder.mChessData:type_name -> tutorial.ReqRewardOrder.MChessDataEntry 2, // 34: tutorial.ResRewardOrder.Code:type_name -> tutorial.RES_CODE 2, // 35: tutorial.ResDelOrder.Code:type_name -> tutorial.RES_CODE 83, // 36: tutorial.ResOrderList.OrderList:type_name -> tutorial.Order 2, // 37: tutorial.ResDecorate.Code:type_name -> tutorial.RES_CODE 2, // 38: tutorial.ResDecorateAll.Code:type_name -> tutorial.RES_CODE 91, // 39: tutorial.ResCardInfo.CardList:type_name -> tutorial.Card - 350, // 40: tutorial.ResCardInfo.AllCard:type_name -> tutorial.ResCardInfo.AllCardEntry - 351, // 41: tutorial.ResCardInfo.Handbook:type_name -> tutorial.ResCardInfo.HandbookEntry + 352, // 40: tutorial.ResCardInfo.AllCard:type_name -> tutorial.ResCardInfo.AllCardEntry + 353, // 41: tutorial.ResCardInfo.Handbook:type_name -> tutorial.ResCardInfo.HandbookEntry 2, // 42: tutorial.ResCardHandbookReward.Code:type_name -> tutorial.RES_CODE 2, // 43: tutorial.ResMasterCard.Code:type_name -> tutorial.RES_CODE 2, // 44: tutorial.ResCardCollectReward.Code:type_name -> tutorial.RES_CODE @@ -21193,11 +21291,11 @@ var file_docs_proto_Gameapi_proto_depIdxs = []int32{ 2, // 55: tutorial.ResRefuseCardExchange.Code:type_name -> tutorial.RES_CODE 2, // 56: tutorial.ResGetFriendCard.Code:type_name -> tutorial.RES_CODE 2, // 57: tutorial.ResGuideReward.Code:type_name -> tutorial.RES_CODE - 352, // 58: tutorial.ResGuildInfo.Reward:type_name -> tutorial.ResGuildInfo.RewardEntry + 354, // 58: tutorial.ResGuildInfo.Reward:type_name -> tutorial.ResGuildInfo.RewardEntry 131, // 59: tutorial.ResItemPop.Items:type_name -> tutorial.ItemInfo 132, // 60: tutorial.ResItemPop.CardPacks:type_name -> tutorial.CardPack - 353, // 61: tutorial.ResDailyTask.WeekReward:type_name -> tutorial.ResDailyTask.WeekRewardEntry - 354, // 62: tutorial.ResDailyTask.DailyTask:type_name -> tutorial.ResDailyTask.DailyTaskEntry + 355, // 61: tutorial.ResDailyTask.WeekReward:type_name -> tutorial.ResDailyTask.WeekRewardEntry + 356, // 62: tutorial.ResDailyTask.DailyTask:type_name -> tutorial.ResDailyTask.DailyTaskEntry 131, // 63: tutorial.DailyWeek.Items:type_name -> tutorial.ItemInfo 136, // 64: tutorial.DailyTask.Progress:type_name -> tutorial.QuestProgress 131, // 65: tutorial.DailyTask.Items:type_name -> tutorial.ItemInfo @@ -21216,8 +21314,8 @@ var file_docs_proto_Gameapi_proto_depIdxs = []int32{ 2, // 78: tutorial.ResGetSevenLoginReward.Code:type_name -> tutorial.RES_CODE 2, // 79: tutorial.ResGetMonthLoginReward.Code:type_name -> tutorial.RES_CODE 158, // 80: tutorial.ResActivity.ActiveList:type_name -> tutorial.ActivityInfo - 355, // 81: tutorial.ResLimitEvent.LimitEventList:type_name -> tutorial.ResLimitEvent.LimitEventListEntry - 356, // 82: tutorial.ResLimitEventProgress.ProgressReward:type_name -> tutorial.ResLimitEventProgress.ProgressRewardEntry + 357, // 81: tutorial.ResLimitEvent.LimitEventList:type_name -> tutorial.ResLimitEvent.LimitEventListEntry + 358, // 82: tutorial.ResLimitEventProgress.ProgressReward:type_name -> tutorial.ResLimitEventProgress.ProgressRewardEntry 2, // 83: tutorial.ResLimitEventReward.Code:type_name -> tutorial.RES_CODE 2, // 84: tutorial.ResSelectLimitEvent.Code:type_name -> tutorial.RES_CODE 2, // 85: tutorial.ResLimitSenceReward.Code:type_name -> tutorial.RES_CODE @@ -21227,7 +21325,7 @@ var file_docs_proto_Gameapi_proto_depIdxs = []int32{ 175, // 89: tutorial.ResFriendLog.Player:type_name -> tutorial.ResPlayerSimple 177, // 90: tutorial.NotifyFriendLog.info:type_name -> tutorial.ResFriendLog 180, // 91: tutorial.NotifyFriendCard.Info:type_name -> tutorial.ResFriendCard - 357, // 92: tutorial.ResKv.kv:type_name -> tutorial.ResKv.KvEntry + 359, // 92: tutorial.ResKv.kv:type_name -> tutorial.ResKv.KvEntry 175, // 93: tutorial.ResFriendRecommend.List:type_name -> tutorial.ResPlayerSimple 2, // 94: tutorial.ResFriendIgnore.Code:type_name -> tutorial.RES_CODE 175, // 95: tutorial.ResFriendList.FriendList:type_name -> tutorial.ResPlayerSimple @@ -21241,67 +21339,67 @@ var file_docs_proto_Gameapi_proto_depIdxs = []int32{ 175, // 103: tutorial.ResAgreeFriend.Player:type_name -> tutorial.ResPlayerSimple 2, // 104: tutorial.ResRefuseFriend.Code:type_name -> tutorial.RES_CODE 2, // 105: tutorial.ResDelFriend.Code:type_name -> tutorial.RES_CODE - 358, // 106: tutorial.ResRank.RankList:type_name -> tutorial.ResRank.RankListEntry - 359, // 107: tutorial.ResMailList.MailList:type_name -> tutorial.ResMailList.MailListEntry + 360, // 106: tutorial.ResRank.RankList:type_name -> tutorial.ResRank.RankListEntry + 361, // 107: tutorial.ResMailList.MailList:type_name -> tutorial.ResMailList.MailListEntry 131, // 108: tutorial.MailInfo.Items:type_name -> tutorial.ItemInfo 209, // 109: tutorial.MailNotify.Info:type_name -> tutorial.MailInfo 2, // 110: tutorial.ResReadMail.Code:type_name -> tutorial.RES_CODE 2, // 111: tutorial.ResGetMailReward.Code:type_name -> tutorial.RES_CODE 2, // 112: tutorial.ResDeleteMail.Code:type_name -> tutorial.RES_CODE - 360, // 113: tutorial.ResCharge.SpecialShop:type_name -> tutorial.ResCharge.SpecialShopEntry - 361, // 114: tutorial.ResCharge.ChessShop:type_name -> tutorial.ResCharge.ChessShopEntry - 362, // 115: tutorial.ResCharge.Gift:type_name -> tutorial.ResCharge.GiftEntry + 362, // 113: tutorial.ResCharge.SpecialShop:type_name -> tutorial.ResCharge.SpecialShopEntry + 363, // 114: tutorial.ResCharge.ChessShop:type_name -> tutorial.ResCharge.ChessShopEntry + 364, // 115: tutorial.ResCharge.Gift:type_name -> tutorial.ResCharge.GiftEntry 2, // 116: tutorial.ResFreeShop.Code:type_name -> tutorial.RES_CODE 2, // 117: tutorial.ResBuyChessShop.Code:type_name -> tutorial.RES_CODE - 363, // 118: tutorial.ReqBuyChessShop2.mChessData:type_name -> tutorial.ReqBuyChessShop2.MChessDataEntry + 365, // 118: tutorial.ReqBuyChessShop2.mChessData:type_name -> tutorial.ReqBuyChessShop2.MChessDataEntry 2, // 119: tutorial.ResBuyChessShop2.Code:type_name -> tutorial.RES_CODE 2, // 120: tutorial.ResRefreshChessShop.Code:type_name -> tutorial.RES_CODE - 364, // 121: tutorial.ResEndless.EndlessList:type_name -> tutorial.ResEndless.EndlessListEntry + 366, // 121: tutorial.ResEndless.EndlessList:type_name -> tutorial.ResEndless.EndlessListEntry 131, // 122: tutorial.ResEndlessInfo.Items:type_name -> tutorial.ItemInfo 2, // 123: tutorial.ResEndlessReward.Code:type_name -> tutorial.RES_CODE 2, // 124: tutorial.ResPiggyBankReward.Code:type_name -> tutorial.RES_CODE 2, // 125: tutorial.ResShippingOrder.Code:type_name -> tutorial.RES_CODE 2, // 126: tutorial.ResChampshipReward.Code:type_name -> tutorial.RES_CODE 2, // 127: tutorial.ResChampshipRankReward.Code:type_name -> tutorial.RES_CODE - 365, // 128: tutorial.ResChampshipRank.RankList:type_name -> tutorial.ResChampshipRank.RankListEntry - 366, // 129: tutorial.ResChampshipPreRank.RankList:type_name -> tutorial.ResChampshipPreRank.RankListEntry - 367, // 130: tutorial.ResNotifyCard.Card:type_name -> tutorial.ResNotifyCard.CardEntry - 368, // 131: tutorial.ResNotifyCard.Master:type_name -> tutorial.ResNotifyCard.MasterEntry - 369, // 132: tutorial.ResNotifyCard.Handbook:type_name -> tutorial.ResNotifyCard.HandbookEntry + 367, // 128: tutorial.ResChampshipRank.RankList:type_name -> tutorial.ResChampshipRank.RankListEntry + 368, // 129: tutorial.ResChampshipPreRank.RankList:type_name -> tutorial.ResChampshipPreRank.RankListEntry + 369, // 130: tutorial.ResNotifyCard.Card:type_name -> tutorial.ResNotifyCard.CardEntry + 370, // 131: tutorial.ResNotifyCard.Master:type_name -> tutorial.ResNotifyCard.MasterEntry + 371, // 132: tutorial.ResNotifyCard.Handbook:type_name -> tutorial.ResNotifyCard.HandbookEntry 2, // 133: tutorial.ResSetFacebookUrl.Code:type_name -> tutorial.RES_CODE - 370, // 134: tutorial.ResMining.Map:type_name -> tutorial.ResMining.MapEntry - 371, // 135: tutorial.ReqMiningTake.Map:type_name -> tutorial.ReqMiningTake.MapEntry + 372, // 134: tutorial.ResMining.Map:type_name -> tutorial.ResMining.MapEntry + 373, // 135: tutorial.ReqMiningTake.Map:type_name -> tutorial.ReqMiningTake.MapEntry 2, // 136: tutorial.ResMiningTake.Code:type_name -> tutorial.RES_CODE 2, // 137: tutorial.ResMiningReward.Code:type_name -> tutorial.RES_CODE - 372, // 138: tutorial.ResActRed.Red:type_name -> tutorial.ResActRed.RedEntry + 374, // 138: tutorial.ResActRed.Red:type_name -> tutorial.ResActRed.RedEntry 158, // 139: tutorial.ActivityNotify.Info:type_name -> tutorial.ActivityInfo - 373, // 140: tutorial.ResItem.Item:type_name -> tutorial.ResItem.ItemEntry - 374, // 141: tutorial.ItemNotify.Item:type_name -> tutorial.ItemNotify.ItemEntry - 275, // 142: tutorial.ResGuessColor.Opponent:type_name -> tutorial.opponent - 375, // 143: tutorial.ReqGuessColorTake.Map:type_name -> tutorial.ReqGuessColorTake.MapEntry + 375, // 140: tutorial.ResItem.Item:type_name -> tutorial.ResItem.ItemEntry + 376, // 141: tutorial.ItemNotify.Item:type_name -> tutorial.ItemNotify.ItemEntry + 277, // 142: tutorial.ResGuessColor.Opponent:type_name -> tutorial.opponent + 377, // 143: tutorial.ReqGuessColorTake.Map:type_name -> tutorial.ReqGuessColorTake.MapEntry 2, // 144: tutorial.ResGuessColorTake.Code:type_name -> tutorial.RES_CODE 2, // 145: tutorial.ResGuessColorReward.Code:type_name -> tutorial.RES_CODE - 282, // 146: tutorial.ResRace.Opponent:type_name -> tutorial.raceopponent + 284, // 146: tutorial.ResRace.Opponent:type_name -> tutorial.raceopponent 2, // 147: tutorial.ResRaceStart.Code:type_name -> tutorial.RES_CODE 2, // 148: tutorial.ResRaceReward.Code:type_name -> tutorial.RES_CODE 131, // 149: tutorial.ResPlayroom.Items:type_name -> tutorial.ItemInfo - 296, // 150: tutorial.ResPlayroom.Opponent:type_name -> tutorial.RoomOpponent - 295, // 151: tutorial.ResPlayroom.Friend:type_name -> tutorial.FriendRoom - 376, // 152: tutorial.ResPlayroom.Playroom:type_name -> tutorial.ResPlayroom.PlayroomEntry - 377, // 153: tutorial.ResPlayroom.Mood:type_name -> tutorial.ResPlayroom.MoodEntry + 298, // 150: tutorial.ResPlayroom.Opponent:type_name -> tutorial.RoomOpponent + 297, // 151: tutorial.ResPlayroom.Friend:type_name -> tutorial.FriendRoom + 378, // 152: tutorial.ResPlayroom.Playroom:type_name -> tutorial.ResPlayroom.PlayroomEntry + 379, // 153: tutorial.ResPlayroom.Mood:type_name -> tutorial.ResPlayroom.MoodEntry 131, // 154: tutorial.ResPlayroom.LoseItem:type_name -> tutorial.ItemInfo 2, // 155: tutorial.ResPlayroomWrokOutline.Code:type_name -> tutorial.RES_CODE 131, // 156: tutorial.NotifyPlayroomLose.LoseItem:type_name -> tutorial.ItemInfo - 378, // 157: tutorial.NotifyPlayroomMood.Mood:type_name -> tutorial.NotifyPlayroomMood.MoodEntry - 379, // 158: tutorial.ResPlayroomInfo.Playroom:type_name -> tutorial.ResPlayroomInfo.PlayroomEntry - 380, // 159: tutorial.ResPlayroomInfo.Items:type_name -> tutorial.ResPlayroomInfo.ItemsEntry - 381, // 160: tutorial.ResPlayroomInfo.flip:type_name -> tutorial.ResPlayroomInfo.FlipEntry + 380, // 157: tutorial.NotifyPlayroomMood.Mood:type_name -> tutorial.NotifyPlayroomMood.MoodEntry + 381, // 158: tutorial.ResPlayroomInfo.Playroom:type_name -> tutorial.ResPlayroomInfo.PlayroomEntry + 382, // 159: tutorial.ResPlayroomInfo.Items:type_name -> tutorial.ResPlayroomInfo.ItemsEntry + 383, // 160: tutorial.ResPlayroomInfo.flip:type_name -> tutorial.ResPlayroomInfo.FlipEntry 2, // 161: tutorial.ResPlayroomFlip.Code:type_name -> tutorial.RES_CODE 2, // 162: tutorial.ResPlayroomFlipReward.Code:type_name -> tutorial.RES_CODE 2, // 163: tutorial.ResPlayroomGame.Code:type_name -> tutorial.RES_CODE - 382, // 164: tutorial.ResPlayroomGame.Items:type_name -> tutorial.ResPlayroomGame.ItemsEntry + 384, // 164: tutorial.ResPlayroomGame.Items:type_name -> tutorial.ResPlayroomGame.ItemsEntry 2, // 165: tutorial.ResPlayroomInteract.Code:type_name -> tutorial.RES_CODE - 383, // 166: tutorial.ReqPlayroomSetRoom.Playroom:type_name -> tutorial.ReqPlayroomSetRoom.PlayroomEntry + 385, // 166: tutorial.ReqPlayroomSetRoom.Playroom:type_name -> tutorial.ReqPlayroomSetRoom.PlayroomEntry 2, // 167: tutorial.ResPlayroomSetRoom.Code:type_name -> tutorial.RES_CODE 2, // 168: tutorial.ResPlayroomSelectReward.Code:type_name -> tutorial.RES_CODE 2, // 169: tutorial.ResPlayroomLose.Code:type_name -> tutorial.RES_CODE @@ -21310,8 +21408,8 @@ var file_docs_proto_Gameapi_proto_depIdxs = []int32{ 2, // 172: tutorial.ResPlayroomDraw.Code:type_name -> tutorial.RES_CODE 2, // 173: tutorial.ResPlayroomChip.Code:type_name -> tutorial.RES_CODE 2, // 174: tutorial.ResPlayroomBuyItem.Code:type_name -> tutorial.RES_CODE - 325, // 175: tutorial.ResFriendTreasure.List:type_name -> tutorial.TreasureInfo - 325, // 176: tutorial.ReqFriendTreasureStart.List:type_name -> tutorial.TreasureInfo + 327, // 175: tutorial.ResFriendTreasure.List:type_name -> tutorial.TreasureInfo + 327, // 176: tutorial.ReqFriendTreasureStart.List:type_name -> tutorial.TreasureInfo 2, // 177: tutorial.ResFriendTreasureStart.Code:type_name -> tutorial.RES_CODE 2, // 178: tutorial.ResFriendTreasureEnd.Code:type_name -> tutorial.RES_CODE 2, // 179: tutorial.ResFriendTreasureFilp.Code:type_name -> tutorial.RES_CODE @@ -21345,7 +21443,7 @@ func file_docs_proto_Gameapi_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_docs_proto_Gameapi_proto_rawDesc, NumEnums: 4, - NumMessages: 380, + NumMessages: 382, NumExtensions: 0, NumServices: 0, },